Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-bugs: [Wireshark-bugs] [Bug 6540] Wireshark crashes if compiled without GLib thread su

Date: Sun, 6 Nov 2011 12:23:03 -0800 (PST)
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6540

--- Comment #3 from aoerneononon@xxxxxxxxx 2011-11-06 12:23:00 PST ---
(In reply to comment #1)
> What version of Fedora and GLib are you using? The problem isn't showing up
> here on Ubuntu 10.04 and OS X 10.6 even though it arguably should. Wireshark
> gets linked with libgthread even without specifying --enable-threads.
> 
> Can you try wireshark-1.6.4pre1-39728.tar.bz2 or later from
> http://www.wireshark.org/download/prerelease/ ? I checked in fixes for a couple
> of obvious problems but don't have a way of reliably testing them here.

I use a Fedora Core 2 system and have a more up to date Fedora 11.

Fedora 11:
----------
glib-1.2.10-31.fc11.i586
glibc-2.10.1-2.i686
glib2-2.20.1-1.fc11.i586

Fedora 2:
---------
glib-1.2.10-12.1.1
glibc-2.3.3-27
glib2-2.10.2-2

I am on a dialup. 3-4 mins (closer to 4) for each Meg downloaded.
Wireshark is a large, complex thing. It takes almost an hour to
compile/install in the older FC2 system.

Back in version 1.6.0 I noticed (reported) a bug. It compiled
new libraries and linked to the system installed libraries
(from the prior installation). No problem if one had 1.2.0
and compiled a new version of 1.2.0 (compatible with the old)
for when one installed, the old version was overwritted and
one got the new version. However, what if the new version is
1.2.1? When one installs one is using the old library.

On FC2 I compile from source. On Fedora 11 I use the spec file
in the tarball to create an RPM and install from that.

On FC2 I compiled and installed 1.6.0 from source. It was working.
I noticed that it had installed a new version of libwireshark so
I removed the old. Boom. Cannot run, cannot find the library.

On Fedora 11 I build the RPM and used "rpm -Uvh" to upgrade.
It compiled the RPM linking to the system (old) library and the
upgrade command removed the old version and installed the new.
Boom. The library to which it was linked did not exist.

So now ... I remove everything from an old version before compiling
(or building the RPM) and installing.

If that has not been patched, compiling 1.6.3 on a system which
has 1.6.2 installed and trying to run it may show no problems
as it may not be using the new library (1.6.3 installs new version
numbers of libwireshark and libwiretap) [if the problem is in the
library].

For 1.6.3 it took over and hour to download. On FC2 I don't save
the old installation, but recompile if there are problems. I removed
1.6.2. About an our later I had 1.6.3 installed. It linked to the
thread library but ... told me that something was trying to use it
without initializing it. Rip it out. Check the config and make stuff
in 1.6.2 and 1.6.3. (using vimdiff to check for differences). grep
for 'thread' in the two source trees. Nothing much interesting
(though I see that in welcome.c there is a new section to initialize
threads if they are being used). Recompile 1.6.3 with '--enable-threads'.
Try it. Fail. Rip it out. Recompile and install 1.6.2.
Four hours (download, 1.,6.3 first try, 1.6.3 second try, 1.6.2).

Try Fedora 11. Uninstall the 1.6.2 RPM. Use the spec file to
create the 1.6.3 RPM. Install. Fail. Remove the RPM. Try changing
the spec file to enable threads. Rebuild the RPM. Install. Try it.
Fail (threads not initialized). Remove the RPM and reinstall the
1.6.2 RPM I kept.

It is not difficult, but is quite time consuming to download
and compile wireshark on my old (slower) FC2. It takes some
time to build the RPM on Fedora 11.

I remember a bug on an old version of the kernel for which I tried
downloading and recompiling patches to help find the bug ... after
days ... it was reported that they found the bug. I like to compile
the kernel without dma on boot. There was a bug in the code for the
Intel chipset I was using. The fix? They removed the option to
compile the kernel without DMA during boot - that is, they just
dropped the option (I use the updated kernel and turn it off after
boot).

Being on a dialup and wanting to get it working on the FC2 as well
as the Fedora 11 system, just getting an SVN version, trying it,
if it doesn't work, trying with threads enabled, if that does not
work, rebuilding 1.6.2 will take almost four hours and there is a
good chance that it will not indicate the problem.

I don't think I have the time or energy to keep pluggging away
at this. A dialup and a slower/older system is not a setup very
useful for finding the problem. If I could do it reasonably I
would be happy to try other versions and play around with it but
not on what I use. Sorry about that, chief.

-- 
Configure bugmail: https://bugs.wireshark.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.