View previous topic :: View next topic |
Author |
Message |
curmudgeon Veteran
Joined: 08 Aug 2003 Posts: 1741
|
Posted: Thu Jul 24, 2014 3:59 am Post subject: program compiles, but won't link [solved] |
|
|
Code: |
qmake "USE_UPNP=-"
make
|
The programs fails at the linking stage:
Code: |
[...]
build/moc_rpcconsole.cpp:1:0: note: this is the location of the previous definition
/usr/bin/moc -DQT_GUI -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6=1 -DHAVE_BUILD_INFO -DLINUX -D_FILE_OFFSET_BITS=64 -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4 -Isrc -Isrc/json -Isrc/qt -Isrc/leveldb/include -Isrc/leveldb/helpers -Ibuild -Ibuild src/qt/macnotificationhandler.h -o build/moc_macnotificationhandler.cpp
g++ -c -pipe -fstack-protector-all -D_FORTIFY_SOURCE=2 -O2 -D_REENTRANT -fdiagnostics-show-option -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -Wstack-protector -DQT_GUI -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6=1 -DHAVE_BUILD_INFO -DLINUX -D_FILE_OFFSET_BITS=64 -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4 -Isrc -Isrc/json -Isrc/qt -Isrc/leveldb/include -Isrc/leveldb/helpers -Ibuild -Ibuild -o build/moc_macnotificationhandler.o build/moc_macnotificationhandler.cpp
<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
build/moc_macnotificationhandler.cpp:1:0: note: this is the location of the previous definition
/usr/bin/moc -DQT_GUI -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6=1 -DHAVE_BUILD_INFO -DLINUX -D_FILE_OFFSET_BITS=64 -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4 -Isrc -Isrc/json -Isrc/qt -Isrc/leveldb/include -Isrc/leveldb/helpers -Ibuild -Ibuild src/qt/splashscreen.h -o build/moc_splashscreen.cpp
g++ -c -pipe -fstack-protector-all -D_FORTIFY_SOURCE=2 -O2 -D_REENTRANT -fdiagnostics-show-option -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -Wstack-protector -DQT_GUI -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6=1 -DHAVE_BUILD_INFO -DLINUX -D_FILE_OFFSET_BITS=64 -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4 -Isrc -Isrc/json -Isrc/qt -Isrc/leveldb/include -Isrc/leveldb/helpers -Ibuild -Ibuild -o build/moc_splashscreen.o build/moc_splashscreen.cpp
<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
build/moc_splashscreen.cpp:1:0: note: this is the location of the previous definition
/usr/bin/rcc -name bitcoin src/qt/bitcoin.qrc -o qrc_bitcoin.cpp
g++ -c -pipe -fstack-protector-all -D_FORTIFY_SOURCE=2 -O2 -D_REENTRANT -fdiagnostics-show-option -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -Wstack-protector -DQT_GUI -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6=1 -DHAVE_BUILD_INFO -DLINUX -D_FILE_OFFSET_BITS=64 -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4 -Isrc -Isrc/json -Isrc/qt -Isrc/leveldb/include -Isrc/leveldb/helpers -Ibuild -Ibuild -o build/qrc_bitcoin.o qrc_bitcoin.cpp
<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
qrc_bitcoin.cpp:1:0: note: this is the location of the previous definition
g++ -fstack-protector-all -Wl,-O1 -o darkcoin-qt build/bitcoin.o build/bitcoingui.o build/transactiontablemodel.o build/addresstablemodel.o build/optionsdialog.o build/sendcoinsdialog.o build/coincontroldialog.o build/coincontroltreewidget.o build/addressbookpage.o build/signverifymessagedialog.o build/aboutdialog.o build/editaddressdialog.o build/bitcoinaddressvalidator.o build/alert.o build/version.o build/sync.o build/util.o build/hash.o build/netbase.o build/key.o build/script.o build/main.o build/init.o build/net.o build/bloom.o build/checkpoints.o build/addrman.o build/db.o build/walletdb.o build/clientmodel.o build/guiutil.o build/transactionrecord.o build/optionsmodel.o build/monitoreddatamapper.o build/transactiondesc.o build/transactiondescdialog.o build/bitcoinstrings.o build/bitcoinamountfield.o build/wallet.o build/keystore.o build/transactionfilterproxy.o build/transactionview.o build/walletmodel.o build/walletview.o build/walletstack.o build/walletframe.o build/bitcoinrpc.o build/rpcdump.o build/rpcnet.o build/rpcmining.o build/rpcwallet.o build/rpcdarksend.o build/rpcblockchain.o build/rpcrawtransaction.o build/overviewpage.o build/csvmodelwriter.o build/crypter.o build/sendcoinsentry.o build/qvalidatedlineedit.o build/bitcoinunits.o build/qvaluecombobox.o build/askpassphrasedialog.o build/protocol.o build/notificator.o build/paymentserver.o build/rpcconsole.o build/noui.o build/leveldb.o build/txdb.o build/splashscreen.o build/blake.o build/bmw.o build/groestl.o build/jh.o build/keccak.o build/skein.o build/luffa.o build/cubehash.o build/shavite.o build/echo.o build/simd.o build/checkpointsync.o build/moc_bitcoingui.o build/moc_transactiontablemodel.o build/moc_addresstablemodel.o build/moc_optionsdialog.o build/moc_sendcoinsdialog.o build/moc_coincontroldialog.o build/moc_coincontroltreewidget.o build/moc_addressbookpage.o build/moc_signverifymessagedialog.o build/moc_aboutdialog.o build/moc_editaddressdialog.o build/moc_bitcoinaddressvalidator.o build/moc_clientmodel.o build/moc_guiutil.o build/moc_optionsmodel.o build/moc_monitoreddatamapper.o build/moc_transactiondesc.o build/moc_transactiondescdialog.o build/moc_bitcoinamountfield.o build/moc_transactionfilterproxy.o build/moc_transactionview.o build/moc_walletmodel.o build/moc_walletview.o build/moc_walletstack.o build/moc_walletframe.o build/moc_overviewpage.o build/moc_csvmodelwriter.o build/moc_sendcoinsentry.o build/moc_qvalidatedlineedit.o build/moc_bitcoinunits.o build/moc_qvaluecombobox.o build/moc_askpassphrasedialog.o build/moc_notificator.o build/moc_paymentserver.o build/moc_rpcconsole.o build/moc_macnotificationhandler.o build/moc_splashscreen.o build/qrc_bitcoin.o -L/usr/lib64/qt4 /var/tmp/portage/darkcoin/darkcoin-master/src/leveldb/libleveldb.a /var/tmp/portage/darkcoin/darkcoin-master/src/leveldb/libmemenv.a -lrt -lssl -lcrypto -ldb_cxx -lboost_system -lboost_filesystem -lboost_program_options -lboost_thread -lQtGui -L/usr/lib64 -L/usr/lib64/qt4 -L/usr/X11R6/lib -lEGL -lQtNetwork -lQtCore -lgthread-2.0 -lglib-2.0 -lpthread
build/main.o: In function `boost::this_thread::sleep_for(boost::chrono::duration<long, boost::ratio<1l, 1000000000l> > const&)':
main.cpp:(.text._ZN5boost11this_thread9sleep_forERKNS_6chrono8durationIlNS_5ratioILl1ELl1000000000EEEEE[_ZN5boost11this_thread9sleep_forERKNS_6chrono8durationIlNS_5ratioILl1ELl1000000000EEEEE]+0x5a): undefined reference to `boost::chrono::system_clock::now()'
main.cpp:(.text._ZN5boost11this_thread9sleep_forERKNS_6chrono8durationIlNS_5ratioILl1ELl1000000000EEEEE[_ZN5boost11this_thread9sleep_forERKNS_6chrono8durationIlNS_5ratioILl1ELl1000000000EEEEE]+0x62): undefined reference to `boost::chrono::steady_clock::now()'
main.cpp:(.text._ZN5boost11this_thread9sleep_forERKNS_6chrono8durationIlNS_5ratioILl1ELl1000000000EEEEE[_ZN5boost11this_thread9sleep_forERKNS_6chrono8durationIlNS_5ratioILl1ELl1000000000EEEEE]+0xa8): undefined reference to `boost::chrono::steady_clock::now()'
build/init.o: In function `DetectShutdownThread(boost::thread_group*)':
init.cpp:(.text+0x123f): undefined reference to `boost::chrono::system_clock::now()'
init.cpp:(.text+0x124c): undefined reference to `boost::chrono::steady_clock::now()'
init.cpp:(.text+0x1416): undefined reference to `boost::chrono::steady_clock::now()'
build/db.o: In function `CDB::Rewrite(std::string const&, char const*)':
db.cpp:(.text+0x2974): undefined reference to `boost::chrono::system_clock::now()'
db.cpp:(.text+0x297c): undefined reference to `boost::chrono::steady_clock::now()'
db.cpp:(.text+0x2b58): undefined reference to `boost::chrono::steady_clock::now()'
build/walletdb.o: In function `ThreadFlushWalletDB(std::string const&)':
walletdb.cpp:(.text+0x1b35): undefined reference to `boost::chrono::system_clock::now()'
walletdb.cpp:(.text+0x1b3d): undefined reference to `boost::chrono::steady_clock::now()'
walletdb.cpp:(.text+0x1c46): undefined reference to `boost::chrono::steady_clock::now()'
collect2: error: ld returned 1 exit status
make: *** [darkcoin-qt] Error 1
|
I tried searching, and found two possible solutions, neither of which worked. The first suggested adding -lrt to the Makefile, but it is already there. The second (I believe this was targeted specifically at gentoo) suggested trying:
Code: |
make "BOOST_LIB_SUFFIX=-mt"
|
Does anyone have any idea what is happening?
Last edited by curmudgeon on Thu Jul 24, 2014 9:54 pm; edited 1 time in total |
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Thu Jul 24, 2014 4:39 pm Post subject: Re: program compiles, but won't link |
|
|
curmudgeon wrote: | I tried searching, and found two possible solutions, neither of which worked. The first suggested adding -lrt to the Makefile, but it is already there. The second (I believe this was targeted specifically at gentoo) suggested trying:
Code: |
make "BOOST_LIB_SUFFIX=-mt"
|
Does anyone have any idea what is happening? |
Undefined references just mean it can't find some symbol it's looking for, when it comes to final link; they should be provided by some library named in the command-line, if they're not libc symbols.
Checking output from: Code: | qlist boost|grep -F '.so' | there are indeed some -mt suffixed libs, so I imagine the above may work for you, or you may need to mangle specific names in the worst case. I don't know boost very well, so someone else can give us the background, though I do seem to recall this being discussed on the dev mailing-list a year or two ago.
If you want more help with toolchain issues, I suggest ##workingset on IRC:chat.freenode.net. |
|
Back to top |
|
|
curmudgeon Veteran
Joined: 08 Aug 2003 Posts: 1741
|
Posted: Thu Jul 24, 2014 9:54 pm Post subject: |
|
|
Found and answer on another forum (from the developer of the software).
I needed to add this to the LIBS line in the Makefile (never would have figured that out by myself):
Thanks for your reply. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|