2004-03-22 23:40:44 +00:00
|
|
|
$Id: README.macos,v 1.5 2004/03/22 23:40:44 guy Exp $
|
2004-03-15 02:04:08 +00:00
|
|
|
|
2004-03-16 18:18:48 +00:00
|
|
|
This file tries to help building Ethereal for Mac OS X (Ethereal does
|
|
|
|
not work on earlier versions of Mac OS).
|
2004-03-15 02:04:08 +00:00
|
|
|
|
|
|
|
The changes to enable libwiretap and libethereal being built as shared
|
2004-03-16 18:18:48 +00:00
|
|
|
libraries have broken shared gtk1 builds on Mac OS X. The GLib 1.x and
|
|
|
|
GTK+ 1.x release tarballs were built with an older version of libtool
|
|
|
|
that didn't support shared libraries on Mac OS X, so you can't build and
|
|
|
|
install them as shared libraries, but the shared-library build of
|
|
|
|
Ethereal requires GLib and GTK+, on Mac OS X, to be shared libraries.
|
|
|
|
The alternative to build Ethereal as one big statically linked binary
|
|
|
|
isn't working either (and may never have worked on this OS).
|
2004-03-15 02:04:08 +00:00
|
|
|
|
|
|
|
The way out of this situation is to use gtk2 and associated libraries
|
|
|
|
which is known to work in this constellation:
|
|
|
|
|
|
|
|
GLib 2.2.3
|
|
|
|
Pango 1.2.5
|
|
|
|
GTK+ 2.2.3
|
|
|
|
ATK 1.2.4
|
|
|
|
|
2004-03-22 23:40:44 +00:00
|
|
|
(GTK+ 2.4 won't work, as it requires Pango 1.4 with fontconfig support,
|
|
|
|
and Pango 1.4 refuses to handle a fontconfig that pkg-config doesn't
|
|
|
|
know about, such as the fontconfig in Panther) and the corresponding
|
|
|
|
dependencies:
|
|
|
|
|
|
|
|
pkg-config
|
|
|
|
jpegsrc
|
|
|
|
libpng
|
|
|
|
tiff
|
|
|
|
|
|
|
|
as well as GNU gettext, which isn't included in the directory of
|
|
|
|
dependencies on the GTK+ FTP site. NOTE: you must install the
|
|
|
|
pkg-config dependency first; unless it is installed, you cannot
|
|
|
|
configure GLib or GTK+. After that, you must install GNU gettext; only
|
|
|
|
after both of those have been built and installed will you be able to
|
|
|
|
configure GLib. After configuring and installing GLib, configure,
|
|
|
|
build, and install Pango, ATK, jpegsrc, libpng, tiff, and GTK+, in
|
|
|
|
order. (The exact order might not be important, but you must configure,
|
|
|
|
build, and install Pango and ATK before configuring GTK+ and, if you
|
|
|
|
want GTK+ to be able to use the capabilities from the other libraries,
|
|
|
|
you must configure, build, and install them before configuring GTK+.)
|
|
|
|
|
|
|
|
You will need to do "make install-lib" for the JPEG library to install
|
|
|
|
its libraries - "make install" does not suffice. You will also have to
|
|
|
|
do "sudo ranlib /usr/lib/libjpeg.a" after "make install-lib".
|
|
|
|
|
|
|
|
For libpng, use scripts/makefile.darwin, not scripts/makefile.macosx.
|
|
|
|
|
|
|
|
In case you also have gtk1 installed, you will need to run configure
|
|
|
|
with the "--enable-gtk2" argument.
|
2004-03-15 02:04:08 +00:00
|
|
|
|
2004-03-21 19:04:44 +00:00
|
|
|
Another problem are compile errors in the wiretap directory like the
|
|
|
|
following:
|
|
|
|
pcap-util.c: In function `get_interface_list_findalldevs':
|
|
|
|
pcap-util.c:195: error: `pcap_if_t' undeclared (first use in this function)
|
|
|
|
|
2004-03-21 22:55:59 +00:00
|
|
|
On first sight, it would appear that Mac OS X 10.x ships with a weird
|
|
|
|
version of libpcap that includes pcap_findalldevs, but no definition for
|
|
|
|
pcap_if_t.
|
|
|
|
|
|
|
|
As it turns out, this isn't true for Mac OS X 10.3 through 10.3.2; they
|
|
|
|
ships with an 0.6[.x]-derived libpcap that doesn't include
|
|
|
|
"pcap_findalldevs()". The problem in those releases is caused by a
|
|
|
|
Security Update - it updates the libpcap dylib to 0.8.1, but doesn't
|
2004-03-21 19:04:44 +00:00
|
|
|
update the header files (or the man page - and also doesn't update the
|
2004-03-21 22:55:59 +00:00
|
|
|
tcpdump man page to 3.8.1).
|
|
|
|
|
|
|
|
In addition, the Software Update to 10.3.3 and later will update the
|
|
|
|
libpcap dylib but not the header files. If systems come pre-installed
|
|
|
|
with 10.3.3, they might have the correct header files (and man pages).
|
|
|
|
|
|
|
|
As a workaround, install pcap.h, pcap-bpf.h and pcap-stdinc.h from
|
|
|
|
tcpdump.org's libpcap 0.8.1 in "/usr/include".
|