[OpenIndiana-discuss] undefined symbol __gnu_cxx::__pool<true>::_M_reserve_block(unsigned int, unsigned int)

Apostolos Syropoulos asyropoulos at yahoo.com
Thu Oct 31 18:26:37 UTC 2013



Hello, I am trying to compile Qt 4.8.5 with g++ 4.7.2 on OpenIndiana/OpenSolaris
Typically, I get the following error message: Text relocation remains                     referenced
    against symbol            offset    in file
QSqlDriver::qt_static_metacall(QObject*, QMetaObject::Call, int, 
void**) 0x442         .obj/release-shared/moc_qsqldriver.o Note that LFLAGS        = -Wl,-R,/opt/gnu/qt4/lib -Wl,-R,/opt/gnu/qt4/lib -shared 
-h      libQtSql.so.4 Now when I change -shared to -G linking finishes with no problem. But 
then compilation stops
with a message like the following one: ndefined            first referenced
 symbol                  in file
__gnu_cxx::__pool<true>::_M_reserve_block(unsigned int, unsigned int) 
/extra/sources/qt/qt-everywhere-opensource-src-4.8.5/lib/libQtCLucene.so.
4
__gnu_cxx::__pool<true>::_M_get_thread_id()    
/extra/sources/qt/qt-everywhere-opensource-src-4.8.5/lib/libQtCLucene.so.
4 Note gcc has been build among others with the following options --without-gnu-ld --with-ld=/usr/ccs/bin/ld --with-gnu-as 
--with-as=/usr/sfw/bin/gas
 
In the past I solved the same problem by using a gcc that uses the GNU 
ld but this does not work always and it was suggested not to build gcc on 
Solaris this way. So does anybodyhave any idea how to solve this problem? It is a pitty that one has to struggle to compile something on any version
of Solaris...
Regards,
A.S. 
 
----------------------
Apostolos Syropoulos
Xanthi, Greece


More information about the OpenIndiana-discuss mailing list