aMule Forum

English => Compilation problems => Topic started by: morph on September 10, 2005, 01:34:07 PM

Title: Mismatch between the program and library build versions detected (Debian)
Post by: morph on September 10, 2005, 01:34:07 PM
Hi all,
trying to compile amule on a debian sid system I got an error due to wxWidget.

Then comfigure string is:

./configure --enable-debug --disable-optimize --enable-kad-compile --enable-amule-daemon --enable-amulecmd --enable-amulegui --prefix=/home/amuletest/

and the compilation goes on correctily.

then executing any generated file I got

amuletest@morpheus:~/bin$ ./amuled -o
Fatal Error: Mismatch between the program and library build versions detected.
The library used 2.6 (debug,Unicode,compiler with C++ ABI 1002,wx containers,compatible with 2.4),
and your program used 2.6 (debug,Unicode,compiler with C++ ABI 102,wx containers,compatible with 2.4).
Aborted
amuletest@morpheus:~/bin$ ./amulecmd
Fatal Error: Mismatch between the program and library build versions detected.
The library used 2.6 (debug,Unicode,compiler with C++ ABI 1002,wx containers,compatible with 2.4),
and your program used 2.6 (debug,Unicode,compiler with C++ ABI 102,wx containers,compatible with 2.4).
Aborted
amuletest@morpheus:~/bin$ ./amule
Fatal Error: Mismatch between the program and library build versions detected.
The library used 2.6 (debug,Unicode,compiler with C++ ABI 1002,wx containers,compatible with 2.4),
and your program used 2.6 (debug,Unicode,compiler with C++ ABI 102,wx containers,compatible with 2.4).
Aborted

The libwx package used is libwxgtk2.6-0, version 2.6.1.1-2 downloaded from http://www.vollstreckernet.de . These libs do work because using the http://www.vollstreckernet.de compiled debs work.

I don't know how goes on...I've had to debug some errors, but if i can't use debug-enable version I can't do it.

Thanks & regards.
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: stefanero on September 10, 2005, 05:50:44 PM
different gcc, the vollstrecker debs where build with say gcc-3.4 and you build amule with gcc-4.0
this is the result
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: morph on September 10, 2005, 08:43:26 PM
Sorry, no luck

amuletest@morpheus:~/amule-cvs$ gcc --version
gcc (GCC) 3.4.5 20050821 (prerelease) (Debian 3.4.4-8)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

and before I've got the version

amuletest@morpheus:~/amule-cvs$ /usr/bin/gcc-3.3 --version
gcc-3.3 (GCC) 3.3.6 (Debian 1:3.3.6-4)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

but the same error comes out.
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: stefanero on September 11, 2005, 12:53:24 PM
well you dont know what gcc wx is compiled with...

I suggest remove wxGTK and compile it yourself or read here and compile it into a seperate directory:

http://www.amule.org/wiki/index.php/Using_another_wxinstall
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: morph on September 11, 2005, 09:48:16 PM
I'm not so addicted to recompile aMule, and I'm gonna show this time too... ;))

I've recompiled wxWidget with

./configure --prefix=/home/amuletest/ --with-gtk --enable-unicode --disable-compat24 --enable-debug --disable-optimise && make && make install

and seems everything went well.

Then i recompiled aMule with new wxlibs with

./configure --enable-debug --disable-optimize --enable-kad-compile --enable-amule-daemon --enable-amulecmd --enable-amulegui --prefix=/home/amuletest/ --with-wx-config=/home/amuletest/bin/wx-config && make && make install

and, again, everything ok.

Then i go to the shell where I'm going to run the amule, type

export LD_LIBRARY_PATH=/home/amuletest/lib:$LD_LIBRARY_PATH

set DISPLAY to :0.0 and the execute amule. It works!!! ok, my test needs to execute amuled+amulegui.

The daemon starts ok, but when launching amulegui i got

./amulegui: Symbol `_ZTV11wxImageList' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV18wxControlWithItems' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV5wxPen' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV6wxList' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV9wxPaintDC' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV9wxControl' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV16wxSplitterWindow' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV12wxDialogBase' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV12wxBitmapBase' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxSpinCtrl' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV12wxChoiceBase' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV8wxSlider' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxListBase' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV6wxFont' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV16wxZipInputStream' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV7wxEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV8wxDialog' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV7wxPanel' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxListItem' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV13wxNotifyEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxKeyEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV7wxGauge' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV17wxGenericTreeCtrl' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV12wxCloseEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV13wxControlBase' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV12wxFocusEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV18wxGenericValidator' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV8wxChoice' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV7wxTimer' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxMenuBase' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxListCtrl' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV16wxTopLevelWindow' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV14wxTextCtrlBase' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV11wxListEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxClientDC' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV7wxFrame' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV14wxCommandEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV8wxBitmap' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV12wxTimerEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV11wxSpinEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV11wxGDIObject' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV18wxGenericImageList' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxTreeCtrl' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV8wxColour' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV12wxMouseEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV11wxTimerBase' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV14wxBitmapButton' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxTextCtrl' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV13wxScrollEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV8wxObject' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxFontBase' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV17wxGenericListCtrl' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV8wxButton' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV6wxIcon' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxCheckBox' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV6wxMenu' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV20wxNavigationKeyEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV10wxRadioBox' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV15wxNotebookEvent' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV16wxScrolledWindow' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV7wxBrush' has different size in shared object, consider re-linking
./amulegui: Symbol `_ZTV7wxImage' has different size in shared object, consider re-linking
Fatal Error: Mismatch between the program and library build versions detected.
The library used 2.6 (debug,Unicode,compiler with C++ ABI 1002,wx containers),
and your program used 2.6 (debug,Unicode,compiler with C++ ABI 102,wx containers,compatible with 2.4).

Now, what should I do?

thanks for the huge support
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: stefanero on September 12, 2005, 07:08:36 AM
you probably startet amulegui in a different shell then amuled right?

did you do the export again?
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: Vollstrecker on September 12, 2005, 08:05:05 AM
stefanero: little hint. wx has reached testing. No need of my wx-pkg anymore. And the new libs at debian are all compiledwith gtcc-4.0 like mine had been before.
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: stefanero on September 12, 2005, 08:09:21 AM
well then Vollstrecker tell him where the problem is ;)
I just know its because of missmatch between gcc-version....and as you can tell recompiling helped
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: Vollstrecker on September 12, 2005, 08:13:55 AM
The version missmatch was the problem, he used gcc-3.3 (102) for his amule. wx (should be from orig rep now) is compiled with gcc-4.0 (1002). But I would just say recompile amule, not wx, because the rest of debian relies on gcc-4.0. Over all I would just say: "Use original reps, and don't compile wx yourself.
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: Kry on September 12, 2005, 08:23:36 AM
Well that's just bad advise. We always advise to compile wx yourself if you face any problem, and worked 99% of the times.
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: Vollstrecker on September 12, 2005, 08:26:44 AM
The last times I didn't of problems with my wx, and debian's ones are the same. I'm happy with these, and I don't have this huge lib installed twice.
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: stefanero on September 12, 2005, 08:39:05 AM
well I think in times of 200gb disk a 30mb lib is not so huge ;)
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: Vollstrecker on September 12, 2005, 08:44:36 AM
My lib partition is from a time where libs had 1 or 2 MB.
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: Kry on September 12, 2005, 09:05:59 AM
Well that's your problem not our problem :) And it's your choice to use debian binnaries for wx also. We'll keep telling people NOT to use thm if they find problems.

Deb packages of wx, gentoo wx versions, and mandrake/suse packages have been so fucked up in the past, we can't trust them anymore. That simple.
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: stefanero on September 12, 2005, 09:19:19 AM
and most filesystems support resizing ;) so that should not  be a big deal....
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: morph on September 12, 2005, 09:49:54 AM
I've compiled wx and the worked for amule graphic client; running in the same console window, amulegui I got the error reported.

amule and wx were compiled with gcc 3.4.5, are reported. I'll try (we I will be at home) to install and compile amule with gcc 4.0 and use the wx lib into repository of Debian and not the Vollstrecker ones. If it  doesn't work anymore, I'll recompile even wx with 4.0.

I'll update even the CVS archive version I used for the tests: now I've used 20050907, and some days passed from then...

thanks again for the support!!
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: Kry on September 12, 2005, 09:52:21 AM
Hey, you're welcome.
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: morph on September 14, 2005, 11:03:40 PM
We finally gat to the end of this story...

Everybody should know that --enable-amulegui and --enable-amule-gui ARE differents configure switch... Now I know it too... ;))

It sounded strange to me that binaries coming from the same compilation 1 worked and the other didn't... We I `ls -l` the bin dir, I got the solution: amulegui wasn't compiled from a week!!

Now I got all the software compiled correctly and fully working (synced with today CVS). I linked to the debian packages libwx: i hope they got the debug code in them, otherwise I'll use my recompiled version with debug symbols.

Thank you very much for the help, and really sorry for the (stupid!) error.

See ya into the bug report threads... ;))
Title: Re: Mismatch between the program and library build versions detected (Debian)
Post by: Vollstrecker on September 15, 2005, 08:15:22 AM
The debug symbols are in a separate paket called libwx....-dbg.