aMule Forum
English => Compilation problems => Topic started by: Filya on October 16, 2005, 02:54:59 PM
-
When I try to compile aMule (currently, today's CVS, but 2.0.2 and later are the same in this FOV) using gcc 2.95 I get error messages, some of them are easy to remove, e.g. change to , since 2.95 has bad relations with templates. But I cannot get rid of this one
In file included from IPFilter.h:32,
from amule.cpp:74:
RangeMap.h:388: no class template named `map' in `class CRangeMap'
RangeMap.h:478: no class template named `map' in `class CRangeMap'
In file included from ExternalConn.h:42,
from amule.cpp:88:
RLE.h: In method `const unsigned char * RLE_Data::EncodeT(unsigned char *&, int, int &)':
RLE.h:50: instantiated from here
RLE.h:79: confused by earlier errors, bailing out
make[4]: *** [amule-amule.o] Error 1
Will it be possible to compile aMule with older versions of gcc? Or since it is old, nobody think about maintaining ability to compile with it?
If anyone interested to make aMule "GCC 2.95 compatible", I may help.
-
Note to aMule devs!
Current CVS when compiled with GCC 3.4.3 as static application in daemon-mode, fails to link at final stage, because of unresolved symbols in libs. When I cut everything from the tail of g++ link command line, after -I/usr/local/include and replaced this tail with tail from normal-configured aMule last, linking command line, it worked! Please look to Makefiles for aMule-daemon :)
-
a) No, we'll never support gcc 2.95. It lacks features we need.
b) Well, if we don't know the errors in your linking, we can do nothing. Current CVS builds here.
-
Originally posted by Kry
a) No, we'll never support gcc 2.95. It lacks features we need.
b) Well, if we don't know the errors in your linking, we can do nothing. Current CVS builds here.
Error is about lacking
wxConnectionBase() in libwx_base-2.7.a
The error is repeated about 6 to 8 times. Same one.
-
Is it right, that aMule will never compile using gcc 2.95.3 ?
As Kry already replied, you can't build amule with gcc < 3.x (it may be even 3.4), since earlier versions fails to compile template code.
Current CVS when compiled with GCC 3.4.3 as static application
As you may guess, the workaround is not to compile as static application.
BTW: most of devs compile and test against wx-2.6.x, so you welcomed to do the same (unless you like to experiment).
-
BTW: most of devs compile and test against wx-2.6.x, so you welcomed to do the same (unless you like to experiment).
The reason to use wx CVS was amule crashed wery likely because "locales bug" in wx 2.6.2.
That did not help, however...