[Qt-interest] OpenSolaris x86 Linker Problems w/ Qt 4.5.0

Ben comsatcat at earthlink.net
Sat Mar 21 21:29:58 CET 2009


Hello,

I'm attempting to compile QT on the latest OpenSolaris build from genunix.org (build 109).  I'm using gcc version 3.4.3 (csl-sol210-3_4-20050802) and using the gnu binutils linker and assembler as described in the solaris compilation notes.

When linking the libQNetwork related stuff, I'm getting the following link errors:


cd src/network/ && gmake -f Makefile 
gmake[1]: Entering directory `/export/home/isox/Downloads/qt-x11-opensource-src-4.5.0/src/network'
rm -f libQtNetwork.so.4.5.0 libQtNetwork.so libQtNetwork.so.4 libQtNetwork.so.4.5
g++ -Wl,-R,/usr/local/qt/lib -Wl,-R,/usr/local/qt/lib -shared -h	libQtNetwork.so.4 -o libQtNetwork.so.4.5.0 .obj/release-shared/qftp.o .obj/release-shared/qhttp.o .obj/release-shared/qhttpnetworkconnection.o .obj/release-shared/qnetworkaccessmanager.o .obj/release-shared/qnetworkaccesscache.o .obj/release-shared/qnetworkaccessbackend.o .obj/release-shared/qnetworkaccessdatabackend.o .obj/release-shared/qnetworkaccessdebugpipebackend.o .obj/release-shared/qnetworkaccessfilebackend.o .obj/release-shared/qnetworkaccesscachebackend.o .obj/release-shared/qnetworkaccessftpbackend.o .obj/release-shared/qnetworkaccesshttpbackend.o .obj/release-shared/qnetworkcookie.o .obj/release-shared/qnetworkrequest.o .obj/release-shared/qnetworkreply.o .obj/release-shared/qnetworkreplyimpl.o .obj/release-shared/qabstractnetworkcache.o .obj/release-shared/qnetworkdiskcache.o .obj/release-shared/qauthenticator.o .obj/release-shared/qhostaddress.o .obj/release-shared/qhostinfo.o .obj/release-shared/qurlinfo.o .obj/release-shared/qnetworkproxy.o .obj/release-shared/qnetworkinterface.o .obj/release-shared/qhostinfo_unix.o .obj/release-shared/qnetworkinterface_unix.o .obj/release-shared/qnetworkproxy_generic.o .obj/release-shared/qabstractsocketengine.o .obj/release-shared/qnativesocketengine.o .obj/release-shared/qhttpsocketengine.o .obj/release-shared/qsocks5socketengine.o .obj/release-shared/qabstractsocket.o .obj/release-shared/qtcpsocket.o .obj/release-shared/qudpsocket.o .obj/release-shared/qtcpserver.o .obj/release-shared/qlocalsocket.o .obj/release-shared/qlocalserver.o .obj/release-shared/qnativesocketengine_unix.o .obj/release-shared/qlocalsocket_unix.o .obj/release-shared/qlocalserver_unix.o .obj/release-shared/qssl.o .obj/release-shared/qsslcertificate.o .obj/release-shared/qsslconfiguration.o .obj/release-shared/qsslcipher.o .obj/release-shared/qsslerror.o .obj/release-shared/qsslkey.o .obj/release-shared/qsslsocket.o .obj/release-shared/qsslsocket_openssl.o .obj/release-shared/qsslsocket_openssl_symbols.o .obj/release-shared/moc_qnetworkaccesscache_p.o .obj/release-shared/moc_qnetworkaccessbackend_p.o .obj/release-shared/moc_qnetworkaccessdebugpipebackend_p.o .obj/release-shared/moc_qnetworkaccesshttpbackend_p.o .obj/release-shared/moc_qnetworkaccessftpbackend_p.o .obj/release-shared/moc_qnetworkcookie.o .obj/release-shared/moc_qnetworkreply.o .obj/release-shared/moc_qabstractnetworkcache.o .obj/release-shared/moc_qnetworkdiskcache.o .obj/release-shared/moc_qhostinfo_p.o .obj/release-shared/moc_qabstractsocketengine_p.o .obj/release-shared/moc_qnativesocketengine_p.o .obj/release-shared/moc_qhttpsocketengine_p.o .obj/release-shared/moc_qsocks5socketengine_p.o .obj/release-shared/moc_qtcpsocket.o .obj/release-shared/moc_qudpsocket.o .obj/release-shared/moc_qlocalserver_p.o .obj/release-shared/qrc_network.o   -L/export/home/isox/Downloads/qt-x11-opensource-src-4.5.0/lib -L/usr/sfw/lib -lresolv -lsocket -lxnet -lnsl -lQtCore -L/export/home/isox/Downloads/qt-x11-opensource-src-4.5.0/lib -L/usr/sfw/lib -lz -lm -lgthread-2.0 -lthread -lglib-2.0 -liconv -lpthread -lrt -ldl 
Undefined			first referenced
 symbol  			    in file
QThread::staticMetaObject           .obj/release-shared/moc_qhostinfo_p.o  (symbol scope specifies local binding)
QCoreApplication::self              .obj/release-shared/qsocks5socketengine.o  (symbol scope specifies local binding)
QIODevice::staticMetaObject         .obj/release-shared/qhttpnetworkconnection.o  (symbol scope specifies local binding)
QObject::staticMetaObject           .obj/release-shared/qftp.o  (symbol scope specifies local binding)
ld: fatal: symbol referencing errors. No output written to libQtNetwork.so.4.5.0
collect2: ld returned 1 exit status
gmake[1]: *** [../../lib/libQtNetwork.so.4.5.0] Error 1
gmake[1]: Leaving directory `/export/home/isox/Downloads/qt-x11-opensource-src-4.5.0/src/network'
gmake: *** [sub-network-make_default-ordered] Error 2


I can't not for the life of me see why its not finding the staticMetaObject symbol.. it is linking QtCore.so in the linker line, so I'm not sure whats going on here.

Any feedback/help would be appreciated.

Thanks in advance,
Ben




More information about the Qt-interest-old mailing list