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

Reply via email to