trinity-users@lists.pearsoncomputing.net

Message: previous - next
Month: February 2011

Re: [trinity-users] Built gcc 4.3.4-3 -- howto change Trinity cmake files to use gcc 4.3.4 instead of gcc 4.5.2

From: "David C. Rankin" <drankinatty@...>
Date: Sun, 13 Feb 2011 22:11:08 -0600
On 02/13/2011 09:42 PM, David C. Rankin wrote:
> On 02/13/2011 09:33 PM, David C. Rankin wrote:
>>   But where? Guessing, I think I can do this is CMakeLists.txt with something
>> similar to the following:
>>
>> ###### global compiler settings #################
>>
>> add_definitions(
>>   -DHAVE_CONFIG_H
>>   ${TQT_CFLAGS_OTHER}
>> )
>>
>> set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -include tqt.h" )
>> set( CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined" )
>> set( CMAKE_MODULE_LINKER_FLAGS "-Wl,--no-undefined" )
>>
>> ##### dcr cmake flags for gcc-4.3 ###############
>>
>> set( CMAKE_C_COMPILER "gcc-4.3" )
>> set( CMAKE_CXX_COMPILER "g++-4.3" )
>>
>>   I'll see if this will work, but if this isn't right, please let me know what
>> else to try. Thanks.
>>
> 
> I think I have it:
> 
>   cmake ../ \
>     -DCMAKE_C_COMPILER="/usr/bin/gcc-4.3" \
>     -DCMAKE_CXX_COMPILER="/usr/bin/g++-4.3" \
>     -DCMAKE_INSTALL_PREFIX=${trinity_prefix} \
>     -DCMAKE_VERBOSE_MAKEFILE=ON \
>     -DWITH_QT3=ON \
>     -DQTDIR=/opt/qt \
>     -DQT_LIBRARY_DIRS=/opt/qt/lib \
>     -DBUILD_ALL=ON
>   make VERBOSE=1
> 
> It's building....
> 

UUGH!

"undefined reference to `std::ctype<char>::_M_widen_init() const@GLIBCXX_3.4.11'"

Looks like I need to downgrade other parts as well - bummer. Full error:

[  7%] Building CXX object
kcminit/CMakeFiles/kcminit.dir/kcminit_kdeinit_executable.cpp.o
cd /home/david/tbld/kdebase/src/kcminit && /usr/bin/g++-4.3   -DHAVE_CONFIG_H
-DUSE_QT3 -DQT_NO_ASCII_CAST -DQT_CLEAN_NAMESPACE -DQT_NO_STL -DQT_NO_COMPAT
-DQT_NO_TRANSLATION -DQT_THREAD_SUPPORT -D_REENTRANT -march=i686 -mtune=generic
-O2 -pipe  -include tqt.h -I/home/david/tbld/kdebase/src/kcminit
-I/home/david/tbld/kdebase/src -I/opt/trinity/include -I/opt/qt/include
-I/opt/qt/include/tqt   -o
CMakeFiles/kcminit.dir/kcminit_kdeinit_executable.cpp.o -c
/home/david/tbld/kdebase/src/kcminit/kcminit_kdeinit_executable.cpp
Linking CXX executable kcminit
cd /home/david/tbld/kdebase/src/kcminit && /usr/bin/cmake -E cmake_link_script
CMakeFiles/kcminit.dir/link.txt --verbose=1
/usr/bin/g++-4.3   -march=i686 -mtune=generic -O2 -pipe  -include tqt.h
-Wl,--hash-style=gnu -Wl,--as-needed
CMakeFiles/kcminit.dir/kcminit_kdeinit_executable.cpp.o  -o kcminit -rdynamic
-L/opt/qt/lib libkdeinit_kcminit.so /opt/trinity/lib/libkutils.so.1.2.0
/opt/trinity/lib/libkparts.so.2.1.0 /opt/trinity/lib/libkio.so.4.2.0
/opt/trinity/lib/libkdeui.so.4.2.0 -lfreetype -lfontconfig
/opt/trinity/lib/libkdesu.so.4.2.0 -lutil
/opt/trinity/lib/libkwalletclient.so.1.0.1 /opt/trinity/lib/libkdecore.so.4.2.0
/opt/trinity/lib/libDCOP.so.4.2.0 /opt/trinity/lib/libkdefx.so.4.2.0 -ltqt
-lqt-mt -lXrender -lX11 -lz -lICE -lSM
-Wl,-rpath,/opt/qt/lib:/home/david/tbld/kdebase/src/kcminit:/opt/trinity/lib:
/opt/trinity/lib/libkdefx.so.4.2.0: undefined reference to
`std::ctype<char>::_M_widen_init() const@GLIBCXX_3.4.11'
collect2: ld returned 1 exit status
make[2]: *** [kcminit/kcminit] Error 1
make[2]: Leaving directory `/home/david/tbld/kdebase/src'
make[1]: *** [kcminit/CMakeFiles/kcminit.dir/all] Error 2
make[1]: Leaving directory `/home/david/tbld/kdebase/src'
make: *** [all] Error 2
    Aborting...

What other parts/packages do I need to drop back to work with gcc-4.3?

-- 
David C. Rankin, J.D.,P.E.