On 04.01.2007, at 13:09, Guy Harris wrote:
Andreas Fink wrote:
Here is how I configure
export PATH="/usr/X11R6/bin:/usr/bin:/bin:/usr/local/bin:/sbin:/usr/
sbin:/usr/local/sbin"
export LDFLAGS="-lz -L/usr/local/lib -Wl,-search_paths_first -Wl,-
single_module"
So why is the "-lz" necessary? The configure script should add
that for
you.
Pure automatism... some libraries needed it so I'm used to have it
everywhere.
And if those libraries are not built with MacOS X version of libz we
had unreadable tracefiles sometimes.
export CFLAGS="-arch ppc -arch i386 -g -Os -fno-omit-frame-pointer -
Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk -I/usr/local/include/
cairo"
I assume the -I/usr/local/include/cairo is for building GTK+, not for
building Wireshark.
True but it needed it to find some header file from Cairo. Might be a
left over from previous install and long fixed
Are the -Os and -fno-omit-frame-pointer just preferences for your
build,
or are they necessary?
my preference...
I successfully built previous versions of wireshark before with this
config line...
export CPPFLAGS=""
export CXXFLAGS="-arch ppc -arch i386 -g -Os fno-omit-frame-pointer -
fno-exceptions -fno-rtti -Wl,-syslibroot,/Developer/SDKs/
MacOSX10.4u.sdk -I/usr/local/include/cairo"
Is that for the libraries being built along with Wireshark? (There's
currently no C++ code in Wireshark, unless I've missed something.)
ok skip the C++ stuff then... I did run once into having proper
CFLAGS but not CXXFLAGS and was looking for the error for weeks as
only one tool was using C++ (that was with mysql at the time where
all the libs are C but the tools are C++), So this was my safeguard
procedure.
./configure --mandir=/usr/share/man --with-ssl --enable-threads --
enable-usr-local --with-lua --enable-adns --disable-dependency-
tracking
Should the man pages be installed in /usr/share/man, or
/usr/local/share/man?
I prefer to use /usr/share/man as usually my MANPATH is not set to
point to /usr/local/share/man...
and on most systems I see PATH is expanded to user local but not
MANPATH...
Bu this is my pure personal preference.
Problem #1: LDFLAGS make ./configure fail.
I would need to add -Wl,-single_module to LDFLAGS (otherwise we get
errors speaking about multi module)
The page at
http://developer.apple.com/releasenotes/DeveloperTools/RN-dyld/
index.html
says
The static linker ld(1) supports building dylibs as either
-multi_module or -single_module. Conceptually, a multi-module dylib is
like a group of smaller dylibs - one per source file. The extra
meta-data in a multi-module dylib allowed (pre-10.4) dyld to delay
binding and running initializers on the individual modules. In Mac
OS X
10.4 dyld ignores all multi-module meta-data and completely binds and
runs all initializers the same as if it were built single-module. In
general, building dylibs -single_module is preferred. The one case
where
multi-module is still useful is it allows internal functions of a
dylib
to be interposable. For instance, libSystem.dylib is built
multi_module
so that malloc() can be overridden and all uses of malloc in libSystem
(e.g. strdup) would be redirected to use the overridden version.
so it appears that it's the right flag to use when building dylibs.
Unfortunately, it's *only* usable when building a dylib, which is
why...
Hmm. compiling the other libraries took it without a problem. Someone
should ignore this option when not creating dylibs.
I can not do this like above because ./configure not wanting to
compile.
...that fails. I'll look into whether there's a way to force it in
libtool, as that's probably the right way to ensure that it's used
when
building only dylibs (although building plugins as bundles might
have to
leave it out).
Fine so far.
Problem #2: Missing LUA files
The files wslua/dtd_gen.lua and wslua/console.lua seem to be missing
(Make looks for them)
Copying them over from the previous install directory solves this.
Why are those missing?
Missing from SVN, or from the release tarball? I assume it's the
release tarball, as they're both in the epan/wslua directory; perhaps
epan/wslua/Makefile.am has to put them in the right macro.
the files are NOT in the release tar.gz I downloaded today.
Problem #3: IRDA plugin fails complaining about
_proto_reg_handoff_sir multiple defined.
...
fix: edit file packet-sir.c and rename the function
"proto_reg_handoff_sir to irda_proto_reg_handoff_sir
Or proto_reg_handoff_irsir(), to parallel proto_register_irsir().
and the only
call to it in proto_register_irsir as well
I've checked in a change to do the aforementioned rename - and to get
rid of the call in proto_register_irsir(), as handoff registration
routines are supposed to be called after *all* registration
routines are
called.
Fine. Now i only have to get rid of eroneoulsy installed fontconfig
(MacOS X already has fontconfig) and then it should work again I
guess and I'm then off to build the PKG with all the dependencies.
The only thing which will not be included is gnutls as that one seems
to be a pain to build as universal library.
Hopefully this version will have a proper libpcap for WLAN on MacBook
Pro too.
Andreas Fink
Fink Consulting GmbH
---------------------------------------------------------------
Tel: +41-61-6666332 Fax: +41-61-6666331 Mobile: +41-79-2457333
Address: Clarastrasse 3, 4058 Basel, Switzerland
E-Mail: [EMAIL PROTECTED]
Homepage: http://www.finkconsulting.com
---------------------------------------------------------------
ICQ: 8239353
MSN: [EMAIL PROTECTED] AIM: smsrelay Skype: andreasfink
Yahoo: finkconsulting SMS: +41792457333
_______________________________________________
Wireshark-dev mailing list
Wireshark-dev@wireshark.org
http://www.wireshark.org/mailman/listinfo/wireshark-dev