aMule Forum
English => Compilation problems => Topic started by: KyroMaster on September 04, 2005, 05:52:26 PM
-
I´m using SuSE 10.0 beta4 and aMule 2.0.3. I´ve wxGTK 2.6.0 installed and I ran configure without any options. During compilation I get:
amule-ExternalConn.o: In function `pair':
/usr/include/c++/4.0.2/bits/stl_pair.h:85: undefined reference to `CValueMap::CValueMap(CValueMap const&)'
amule-ExternalConn.o: In function `~pair':
/usr/include/c++/4.0.2/bits/stl_pair.h:69: undefined reference to `CValueMap::~CValueMap()'
amule-ExternalConn.o: In function `pair':
/usr/include/c++/4.0.2/bits/stl_pair.h:69: undefined reference to `CValueMap::CValueMap(CValueMap const&)'
amule-ExternalConn.o: In function `__gnu_cxx::new_allocator::destroy(CMD4Hash*)':
/usr/include/c++/4.0.2/ext/new_allocator.h:109: undefined reference to `CMD4Hash::~CMD4Hash()'
amule-ExternalConn.o: In function `std::map, std::allocator > >::operator[](void* const&)':
/usr/include/c++/4.0.2/bits/stl_map.h:339: undefined reference to `CValueMap::~CValueMap()'
/usr/include/c++/4.0.2/bits/stl_map.h:339: undefined reference to `CValueMap::~CValueMap()'
collect2: ld returned 1 exit status
make[3]: *** [amule] Fehler 1
make[3]: Leaving directory `/home/michael/tarballs/amule/src'
make[2]: *** [all-recursive] Fehler 1
make[2]: Leaving directory `/home/michael/tarballs/amule/src'
make[1]: *** [all-recursive] Fehler 1
make[1]: Leaving directory `/home/michael/tarballs/amule'
make: *** [all] Fehler 2
Is this a bug in aMule or my config? Thanks for your help ;)
-
Weird...
I would risc to say it is a problem with your C++ compiler installation. Can you try to compile it with gcc32? I don't know if Suse has it, Fedora does.
-
nope, it's a problem with aMule and his gcc
I'll attach a patch... someday. Probably tomorrow.
-
I'd say I've the same problem......
amule-ExternalConn.o: In function `pair':
/usr/lib/gcc/i486-linux-gnu/4.0.2/../../../../include/c++/4.0.2/bits/stl_pair.h:85: undefined reference to `CValueMap::CValueMap(CValueMap const&)'
amule-ExternalConn.o: In function `~pair':
/usr/lib/gcc/i486-linux-gnu/4.0.2/../../../../include/c++/4.0.2/bits/stl_pair.h:69: undefined reference to `CValueMap::~CValueMap()'
amule-ExternalConn.o: In function `pair':
/usr/lib/gcc/i486-linux-gnu/4.0.2/../../../../include/c++/4.0.2/bits/stl_pair.h:69: undefined reference to `CValueMap::CValueMap(CValueMap const&)'
amule-ExternalConn.o: In function `__gnu_cxx::__mt_alloc_base::destroy(CMD4Hash*)':
/usr/lib/gcc/i486-linux-gnu/4.0.2/../../../../include/c++/4.0.2/ext/mt_allocator.h:614: undefined reference to `CMD4Hash::~CMD4Hash()'
amule-ExternalConn.o: In function `std::map, std::allocator > >::operator[](void* const&)':
/usr/lib/gcc/i486-linux-gnu/4.0.2/../../../../include/c++/4.0.2/bits/stl_map.h:339: undefined reference to `CValueMap::~CValueMap()'
/usr/lib/gcc/i486-linux-gnu/4.0.2/../../../../include/c++/4.0.2/bits/stl_map.h:339: undefined reference to `CValueMap::~CValueMap()'
collect2: ld returned 1 exit status
make[3]: *** [amule] Error 1
make[3]: Leaving directory `/mnt/home/src/aMule-2.0.3/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/mnt/home/src/aMule-2.0.3/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/mnt/home/src/aMule-2.0.3'
make: *** [all] Error 2
I'll wait for the patch....
--
cheesburger
-
I checked out yesterdays cvs and it compiles fine. Thanks for the patch :)
There´s a linker error now but that´s wx fault (occurs with every wx program) so I asked on the wx list.
-
-lpangox will fix your problem with wx, or you can use wx CVS
-
Yeah I use wx cvs and aMule works fine now :)
Just for interest, it seems to me (but I´m not an expert *g) that the shared library has unresolved externals. How can this be, at least under windows there have to be all symbols resolved when building a .dll. is linux different here?
-
Just for interest, it seems to me (but I'm not an expert *g) that the shared library has unresolved externals. How can this be, at least under windows there have to be all symbols resolved when building a .dll. is linux different here?
All symbols have to be resolvable. AFAIK resolution is done at run-time.