Ethereal-dev: RE: [Ethereal-dev] Compiling ethereal with GTK2 on Cygwin
Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.
From: Biot Olivier <Olivier.Biot@xxxxxxxxxxx>
Date: Sun, 21 Mar 2004 20:09:42 +0100
Hi Dave, The problem you mention has been introduced while making libethereal a shared library. The Win32 gcc builds of Ethereal apparently have more strict requirements on what can or cannot be in a shared library. For example, the diameter dissector uses error functions which are not part of the libethereal API hence linking fails. Unfortunately I am not an expert in libraries, so I cannot tell you exactly what to do. However, you can try using the libtool "-no-undefined" flag in the Win32 or cygwin builds. Quoting from a message I sent earlier this week: Currently my configure.in file looks like this: [...] dnl Checks for programs. AC_PROG_CC AC_PROG_CPP dnl Work around libtool bug (fixed in the version 1.5a?) AC_DEFUN([AC_PROVIDE_AC_LIBTOOL_DLOPEN], ) AC_LIBTOOL_DLOPEN case "$host_os" in cygwin*) CFLAGS="-mms-bitfields $CFLAGS" LDFLAGS="-no-undefined $LDFLAGS" AC_LIBTOOL_WIN32_DLL ;; esac AC_PROG_LIBTOOL [...] You need to run autogen.sh when you modify the configure.in files in the ethereal root directory, epan and wiretap. Regards, Olivier |-----Original Message----- |From: Dave Wapstra [mailto:dave@xxxxxxxxx] |Sent: zaterdag 20 maart 2004 15:57 |To: ethereal-dev@xxxxxxxxxxxx |Subject: [Ethereal-dev] Compiling ethereal with GTK2 on Cygwin | | |All, | |I am trying to compile ethereal on cygwin with gtk2. I got the gtk2 |libraries and related stuff from |http://web.sfc.keio.ac.jp/~s01397ms/cygwin/index.html.en and am using |cygwin as the environment to compile ethereal in. I took the |latest CVS |(ethereal-2004-03-19) tarball. | |Everything seems to compile ok, however when trying to link to |ethereal.exe I get undefined references. | |$ make ethereal.exe |/bin/bash ./libtool --mode=link gcc -D_U_="__attribute__((unused))" |-Wall -W -g -O2 -I/usr/local/include -pthreads |-I/usr/X11R6/include/gtk-2.0 -I/usr/X11R6/lib/gtk-2.0/include |-I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include |-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include |-L/usr/local/lib |-L/usr/local/lib -o ethereal.exe -export-dynamic pcap-util-unix.o |capture_stop_conditions.o cfile.o conditions.o disabled_protos.o |pcap-util.o print.o ps.o range.o ringbuffer.o timestats.o |version_info.o |alert_box.o capture.o file.o filters.o proto_hier_stats.o summary.o |epan/.libs/libethereal.a wiretap/libwiretap.la gtk/libui.a |epan/libethereal.la -Wl,--export-dynamic -pthreads -L/usr/X11R6/lib |-lgtk-x11-2.0 -lX11 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 |-lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 |-lglib-2.0 -lintl -liconv -lm -lz |gcc "-D_U_=__attribute__((unused))" -Wall -W -g -O2 |-I/usr/local/include |-pthreads -I/usr/X11R6/include/gtk-2.0 |-I/usr/X11R6/lib/gtk-2.0/include |-I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include |-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -o ethereal.exe |pcap-util-unix.o capture_stop_conditions.o cfile.o conditions.o |disabled_protos.o pcap-util.o print.o ps.o range.o ringbuffer.o |timestats.o version_info.o alert_box.o capture.o file.o filters.o |proto_hier_stats.o summary.o -Wl,--export-dynamic -pthreads |-Wl,--export-dynamic -L/usr/local/lib wiretap/.libs/libwiretap.a |-L/usr/lib gtk/libui.a epan/.libs/libethereal.a -L/usr/X11R6/lib |/usr/X11R6/lib/libgtk-x11-2.0.dll.a -lX11 |/usr/X11R6/lib/libgdk-x11-2.0.dll.a /usr/lib/libatk-1.0.dll.a |/usr/lib/libgdk_pixbuf-2.0.dll.a /usr/lib/libpangox-1.0.dll.a |/usr/lib/libpango-1.0.dll.a /usr/lib/libgobject-2.0.dll.a |/usr/lib/libgmodule-2.0.dll.a /usr/lib/libgthread-2.0.dll.a |/usr/lib/libglib-2.0.dll.a -luser32 -lkernel32 /usr/lib/libintl.dll.a |/usr/lib/libiconv.dll.a -lz -Wl,--rpath -Wl,/usr/X11R6/lib -Wl,--rpath |-Wl,/usr/X11R6/lib |gcc: unrecognized option `-pthreads' |gcc: unrecognized option `-pthreads' |disabled_protos.o(.text+0x52): In function `read_disabled_protos_list': |/tmp/ethereal-2004-03-19/disabled_protos.c:80: undefined reference to |`_get_datafile_path' |disabled_protos.o(.text+0xbc):/tmp/ethereal-2004-03-19/disabled |_protos.c:109: |undefined reference to `_get_persconffile_path' |disabled_protos.o(.text+0x4a8): In function `set_disabled_protos_list': |/tmp/ethereal-2004-03-19/disabled_protos.c:274: undefined reference to |`_proto_get_id_by_filter_name' |disabled_protos.o(.text+0x4b7):/tmp/ethereal-2004-03-19/disable |d_protos.c:278: |undefined reference to `_proto_can_toggle_protocol' |disabled_protos.o(.text+0x4f8):/tmp/ethereal-2004-03-19/disable |d_protos.c:293: |undefined reference to `_proto_get_id_by_filter_name' |disabled_protos.o(.text+0x507):/tmp/ethereal-2004-03-19/disable |d_protos.c:297: |undefined reference to `_proto_can_toggle_protocol' |disabled_protos.o(.text+0x524):/tmp/ethereal-2004-03-19/disable |d_protos.c:298: |undefined reference to `_proto_set_decoding' |disabled_protos.o(.text+0x52c):/tmp/ethereal-2004-03-19/disable |d_protos.c:299: |undefined reference to `_proto_set_cant_toggle' |disabled_protos.o(.text+0x53e):/tmp/ethereal-2004-03-19/disable |d_protos.c:279: |undefined reference to `_proto_set_decoding' | |Any suggestions to move forward? | |Regards, |Dave | | |_______________________________________________ |Ethereal-dev mailing list |Ethereal-dev@xxxxxxxxxxxx |http://www.ethereal.com/mailman/listinfo/ethereal-dev |
- Follow-Ups:
- Re: [Ethereal-dev] Compiling ethereal with GTK2 on Cygwin
- From: Guy Harris
- Re: [Ethereal-dev] Compiling ethereal with GTK2 on Cygwin
- Prev by Date: RE: [Ethereal-dev] More updates to Oscar dissector
- Next by Date: RE: [Ethereal-dev] RE: [Ethereal-users] Re: H.225 SETUP not recog nised ? (2)
- Previous by thread: [Ethereal-dev] Compiling ethereal with GTK2 on Cygwin
- Next by thread: Re: [Ethereal-dev] Compiling ethereal with GTK2 on Cygwin
- Index(es):