Hi here's the code when trying to link.
That's 32 bit ubuntu 10.10 version with libxerces-c3.1
Linking CXX executable ../../../mk/linux/megaglest
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::calcRequiredSize(unsigned short const*, xercesc_3_1::MemoryManager*)':
(.text+0x7c): undefined reference to `ucnv_fromUChars_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::transcode(unsigned short const*, char*, unsigned int, xercesc_3_1::MemoryManager*)':
(.text+0x14e): undefined reference to `ucnv_fromUChars_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::transcode(char const*, unsigned short*, unsigned int, xercesc_3_1::MemoryManager*)':
(.text+0x240): undefined reference to `ucnv_toUChars_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::transcode(char const*, xercesc_3_1::MemoryManager*)':
(.text+0x2e8): undefined reference to `ucnv_toUChars_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::transcode(char const*, xercesc_3_1::MemoryManager*)':
(.text+0x341): undefined reference to `ucnv_toUChars_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::calcRequiredSize(char const*, xercesc_3_1::MemoryManager*)':
(.text+0x430): undefined reference to `ucnv_toUChars_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::~ICULCPTranscoder()':
(.text+0x490): undefined reference to `ucnv_close_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::~ICULCPTranscoder()':
(.text+0x500): undefined reference to `ucnv_close_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::~ICULCPTranscoder()':
(.text+0x570): undefined reference to `ucnv_close_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::canTranscodeTo(unsigned int)':
(.text+0x6b4): undefined reference to `UCNV_FROM_U_CALLBACK_STOP_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::canTranscodeTo(unsigned int)':
(.text+0x6d3): undefined reference to `ucnv_setFromUCallBack_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::canTranscodeTo(unsigned int)':
(.text+0x721): undefined reference to `ucnv_fromUnicode_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::canTranscodeTo(unsigned int)':
(.text+0x763): undefined reference to `ucnv_setFromUCallBack_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::~ICUTranscoder()':
(.text+0x7ed): undefined reference to `ucnv_close_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::~ICUTranscoder()':
(.text+0x85d): undefined reference to `ucnv_close_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::~ICUTranscoder()':
(.text+0x8bd): undefined reference to `ucnv_close_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::ICUTranscoder(unsigned short const*, UConverter*, unsigned int, xercesc_3_1::MemoryManager*)':
(.text+0x959): undefined reference to `ucnv_getMaxCharSize_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::ICUTranscoder(unsigned short const*, UConverter*, unsigned int, xercesc_3_1::MemoryManager*)':
(.text+0x966): undefined reference to `ucnv_getMinCharSize_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::ICUTranscoder(unsigned short const*, UConverter*, unsigned int, xercesc_3_1::MemoryManager*)':
(.text+0xa09): undefined reference to `ucnv_getMaxCharSize_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::ICUTranscoder(unsigned short const*, UConverter*, unsigned int, xercesc_3_1::MemoryManager*)':
(.text+0xa16): undefined reference to `ucnv_getMinCharSize_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTransService::makeNewLCPTranscoder(xercesc_3_1::MemoryManager*)':
(.text+0xa78): undefined reference to `ucnv_open_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTransService::compareNIString(unsigned short const*, unsigned short const*, unsigned int)':
(.text+0xb16): undefined reference to `u_foldCase_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTransService::compareNIString(unsigned short const*, unsigned short const*, unsigned int)':
(.text+0xb29): undefined reference to `u_foldCase_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTransService::compareIString(unsigned short const*, unsigned short const*)':
(.text+0xc17): undefined reference to `u_foldCase_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTransService::compareIString(unsigned short const*, unsigned short const*)':
(.text+0xc2d): undefined reference to `u_foldCase_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::transcodeFrom(unsigned char const*, unsigned int, unsigned short*, unsigned int, unsigned int&, unsigned char*)':
(.text+0xdbb): undefined reference to `ucnv_toUnicode_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::transcodeFrom(unsigned char const*, unsigned int, unsigned short*, unsigned int, unsigned int&, unsigned char*)':
(.text+0xf57): undefined reference to `ucnv_getMaxCharSize_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTransService::lowerCase(unsigned short*)':
(.text+0x10a2): undefined reference to `u_tolower_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTransService::upperCase(unsigned short*)':
(.text+0x10c2): undefined reference to `u_toupper_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::transcode(unsigned short const*, xercesc_3_1::MemoryManager*)':
(.text+0x11ac): undefined reference to `ucnv_fromUChars_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICULCPTranscoder::transcode(unsigned short const*, xercesc_3_1::MemoryManager*)':
(.text+0x127f): undefined reference to `ucnv_fromUChars_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTransService::makeNewXMLTranscoder(unsigned short const*, xercesc_3_1::XMLTransService::Codes&, unsigned int, xercesc_3_1::MemoryManager*)':
(.text+0x1441): undefined reference to `ucnv_openU_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::transcodeTo(unsigned short const*, unsigned int, unsigned char*, unsigned int, unsigned int&, xercesc_3_1::XMLTranscoder::UnRepOpts)':
(.text+0x1562): undefined reference to `UCNV_FROM_U_CALLBACK_STOP_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::transcodeTo(unsigned short const*, unsigned int, unsigned char*, unsigned int, unsigned int&, xercesc_3_1::XMLTranscoder::UnRepOpts)':
(.text+0x157f): undefined reference to `UCNV_FROM_U_CALLBACK_SUBSTITUTE_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::transcodeTo(unsigned short const*, unsigned int, unsigned char*, unsigned int, unsigned int&, xercesc_3_1::XMLTranscoder::UnRepOpts)':
(.text+0x15c3): undefined reference to `ucnv_setFromUCallBack_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::transcodeTo(unsigned short const*, unsigned int, unsigned char*, unsigned int, unsigned int&, xercesc_3_1::XMLTranscoder::UnRepOpts)':
(.text+0x1617): undefined reference to `ucnv_fromUnicode_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(ICUTransService.o): In function `xercesc_3_1::ICUTranscoder::transcodeTo(unsigned short const*, unsigned int, unsigned char*, unsigned int, unsigned int&, xercesc_3_1::XMLTranscoder::UnRepOpts)':
(.text+0x1654): undefined reference to `ucnv_setFromUCallBack_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(XMLUniCharacter.o): In function `xercesc_3_1::XMLUniCharacter::getType(unsigned short)':
(.text+0xe): undefined reference to `u_charType_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(RangeToken.o): In function `xercesc_3_1::RangeToken::getCaseInsensitiveToken(xercesc_3_1::TokenFactory*)':
(.text+0xc07): undefined reference to `uset_openPatternOptions_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(RangeToken.o): In function `xercesc_3_1::RangeToken::getCaseInsensitiveToken(xercesc_3_1::TokenFactory*)':
(.text+0xc38): undefined reference to `uset_serialize_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(RangeToken.o): In function `xercesc_3_1::RangeToken::getCaseInsensitiveToken(xercesc_3_1::TokenFactory*)':
(.text+0xc78): undefined reference to `uset_serialize_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(RangeToken.o): In function `xercesc_3_1::RangeToken::getCaseInsensitiveToken(xercesc_3_1::TokenFactory*)':
(.text+0xc8b): undefined reference to `uset_getSerializedSet_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(RangeToken.o): In function `xercesc_3_1::RangeToken::getCaseInsensitiveToken(xercesc_3_1::TokenFactory*)':
(.text+0xc93): undefined reference to `uset_getSerializedRangeCount_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(RangeToken.o): In function `xercesc_3_1::RangeToken::getCaseInsensitiveToken(xercesc_3_1::TokenFactory*)':
(.text+0xcb6): undefined reference to `uset_getSerializedRange_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(RangeToken.o): In function `xercesc_3_1::RangeToken::getCaseInsensitiveToken(xercesc_3_1::TokenFactory*)':
(.text+0xcea): undefined reference to `uset_setSerializedToOne_4_2'
/usr/lib/gcc/i686-linux-gnu/4.4.5/../../../../lib/libxerces-c.a(RangeToken.o): In function `xercesc_3_1::RangeToken::getCaseInsensitiveToken(xercesc_3_1::TokenFactory*)':
(.text+0xcf5): undefined reference to `uset_close_4_2'
collect2: ld returned 1 exit status
make[2]: *** [../mk/linux/megaglest] Erreur 1
make[1]: *** [source/glest_game/CMakeFiles/megaglest.dir/all] Erreur 2
make: *** [all] Erreur 2
You may now launch MegaGlest from this directory like this:
mk/linux/megaglest --ini-path=mk/linux/ --data-path=mk/linux/
or from within the build directory:
../mk/linux/megaglest --ini-path=../mk/linux/ --data-path=../mk/linux/
I downgraded to xerces 2.8 and everything works fine.