Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Undefined symbols for architecture x86_64



  • hey everyone i am trying to compile a qt project on os x and everytime i get to a certain point i get this error and cannot get past it, does anyone know whats causing the issue and how to get around it?

    Undefined symbols for architecture x86_64:
      "qt_mac_execute_apple_script(QString const&, AEDesc*)", referenced from:
          Notificator::notifyGrowl(Notificator::Class, QString const&, QString const&, QIcon const&) in notificator.o
    ld: symbol(s) not found for architecture x86_64
    

  • Lifetime Qt Champion

    Hi
    Welcome to the forums.
    You should tell what macOs version, Qt version and Xcode version you are using :)
    ( Disclaimer. Not macOs user. Just know you will be asked when people try to figure out what going on)



  • the latest mac os version and xcode for that version, i dont have my mac in front of me right now but am working to get it setup so i can remote in, also using qt 5.11



  • macOS High Sierra 10.13.4, Qt 5.11 and Xcode 9.3.1


  • Lifetime Qt Champion

    Hi and welcome to devnet,

    What project are you trying to build ?



  • a cryptocurrency wallet, kinda like bitcoin, i can compile these wallets if they are qt4 with no issues but the last maybe 2 or 3 years when i try to do wallet made with qt5 i get the above error


  • Lifetime Qt Champion

    Growl notification support through Apple Script has been removed as all current version of macOS provide support for the notification center and AFAIR, Qt uses that.

    In any case, that was macOS specific code that would have been used in the corresponding QPA so you would likely have not had direct access to it anyway.

    If you really want to use that function, you should copy it into your project but it would be more interesting to update the code that uses it to use the notification center.



  • @SGaist i found a fix for it and got past it but now i am getting a new issue with a different project but thats boost and not qt but thanks for all your help!



  • maybe y'all can help me with a quick non qt question the issue i am having with compiling with boost is something about the compiler being outdated and is not compiling C++11 how do i fix it so i can compile C++11? i know gcc is 4.2.1 on my mac but other than that i dont know what i need


  • Lifetime Qt Champion

    gcc 4.2.1 ?

    If that's really the case then you have something off with your Mac development setup. Xcode has been using clang for several versions now which is handling even more recent versions of the C++ standard.

    What does clang --version return ?



  • clang shows up as 9.1.0 but i switched it to clang in qt and i still get the boost error


  • Lifetime Qt Champion

    Can you show your .pro file ?



  • sure here you go

    TEMPLATE = app
    TARGET = flapx-qt
    CONFIG += qt
    QT += gui
    VERSION = 2.5.2
    INCLUDEPATH += src src/json src/qt
    INCLUDEPATH += /usr/local/include
    INCLUDEPATH += /usr/local/opt/boost@1.57/include
    DEFINES += QT_GUI BOOST_THREAD_USE_LIB BOOST_SPIRIT_THREADSAFE
    CONFIG += no_include_pwd
    CONFIG += thread
    win32 {
        CONFIG += release
    } else {
        CONFIG += debug_and_release
    }
    CONFIG += static
    
    greaterThan(QT_MAJOR_VERSION, 4) {
        QT += widgets
    
        DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0
    }
    
    # for boost 1.37, add -mt to the boost libraries
    # use: qmake BOOST_LIB_SUFFIX=-mt
    # for boost thread win32 with _win32 sufix
    # use: BOOST_THREAD_LIB_SUFFIX=_win32-...
    # or when linking against a specific BerkelyDB version: BDB_LIB_SUFFIX=-4.8
    
    # Dependency library locations can be customized with:
    #    BOOST_INCLUDE_PATH, BOOST_LIB_PATH, BDB_INCLUDE_PATH,
    #    BDB_LIB_PATH, OPENSSL_INCLUDE_PATH and OPENSSL_LIB_PATH respectively
    OPENSSL_INCLUDE_PATH=/opt/local/include
    OPENSSL_LIB_PATH=/opt/local/lib
    BDB_INCLUDE_PATH=/usr/local/Cellar/berkeley-db@4/4.8.30/include
    BDB_LIB_PATH=/usr/local/Cellar/berkeley-db@4/4.8.30/lib
    BOOST_INCLUDE_PATH=/usr/local/opt/boost@1.57/include
    BOOST_LIB_PATH=/usr/local/opt/boost@1.57/lib
    OBJECTS_DIR = build
    MOC_DIR = build
    UI_DIR = build
    OPENSSL_INCLUDE_PATH=/opt/local/include
    OPENSSL_LIB_PATH=/opt/local/lib
    BDB_INCLUDE_PATH=/opt/local/include/db48
    BDB_LIB_PATH=/usr/local/lib
    BOOST_INCLUDE_PATH=/usr/local/opt/boost@1.57/include
    BOOST_LIB_PATH=/usr/local/opt/boost@1.57/lib
    # use: qmake "RELEASE=1"
    contains(RELEASE, 1) {
        # Mac: compile for maximum compatibility (10.6, 64-bit)
        #macx:QMAKE_MACOSX_DEPLOYMENT_TARGET=10.6
        !windows:!macx {
            # Linux: static link
            LIBS += -Wl,-Bstatic
        }
    }
    
    !win32 {
    # for extra security against potential buffer overflows: enable GCCs Stack Smashing Protection
    QMAKE_CXXFLAGS *= -fstack-protector-all --param ssp-buffer-size=1
    QMAKE_LFLAGS *= -fstack-protector-all --param ssp-buffer-size=1
    # We need to exclude this for Windows cross compile with MinGW 4.2.x, as it will result in a non-working executable!
    # This can be enabled for Windows, when we switch to MinGW >= 4.4.x.
    }
    # for extra security on Windows: enable ASLR and DEP via GCC linker flags
    win32:QMAKE_LFLAGS *= -Wl,--dynamicbase -Wl,--nxcompat
    win32:QMAKE_LFLAGS += -static-libgcc -static-libstdc++
    win32:QMAKE_LFLAGS *= -Wl,--large-address-aware -static
    
    # use: qmake "USE_QRCODE=1"
    # libqrencode (http://fukuchi.org/works/qrencode/index.en.html) must be installed for support
    contains(USE_QRCODE, 1) {
        message(Building with QRCode support)
        DEFINES += USE_QRCODE
        LIBS += -lqrencode
    }
    
    # use: qmake "USE_UPNP=1" ( enabled by default; default)
    #  or: qmake "USE_UPNP=0" (disabled by default)
    #  or: qmake "USE_UPNP=-" (not supported)
    # miniupnpc (http://miniupnp.free.fr/files/) must be installed for support
    contains(USE_UPNP, -) {
        message(Building without UPNP support)
    } else {
        message(Building with UPNP support)
        count(USE_UPNP, 0) {
            USE_UPNP=1
        }
        DEFINES += USE_UPNP=$$USE_UPNP STATICLIB MINIUPNP_STATICLIB
        INCLUDEPATH += $$MINIUPNPC_INCLUDE_PATH
        LIBS += $$join(MINIUPNPC_LIB_PATH,,-L,) -lminiupnpc
        win32:LIBS += -liphlpapi
    }
    
    # use: qmake "USE_DBUS=1"
    contains(USE_DBUS, 1) {
        message(Building with DBUS (Freedesktop notifications) support)
        DEFINES += USE_DBUS
        QT += dbus
    }
    
    contains(BITCOIN_NEED_QT_PLUGINS, 1) {
        DEFINES += BITCOIN_NEED_QT_PLUGINS
        QTPLUGIN += qcncodecs qjpcodecs qtwcodecs qkrcodecs qtaccessiblewidgets
    }
    
    macx: {
    
        isEmpty(DEPSDIR) {
    
            check_dir = /usr/local/Cellar
            exists($$check_dir) {
                DEPSDIR = /usr/local
            }
    
            !exists($$check_dir) {
                DEPSDIR = /opt/local
            }
        }
    
        isEmpty(BOOST_LIB_PATH) {
            BOOST_LIB_PATH = $$DEPSDIR/lib
        }
    
        isEmpty(BOOST_INCLUDE_PATH) {
            BOOST_INCLUDE_PATH = $$DEPSDIR/include
        }
    
        isEmpty(BDB_LIB_PATH) {
            BDB_LIB_PATH = $$DEPSDIR/lib
        }
    
        isEmpty(BDB_INCLUDE_PATH) {
            BDB_INCLUDE_PATH = $$DEPSDIR/include
        }
    
        HEADERS += src/qt/macdockiconhandler.h src/qt/macnotificationhandler.h
        OBJECTIVE_SOURCES += src/qt/macdockiconhandler.mm src/qt/macnotificationhandler.mm
        LIBS += -framework Foundation -framework ApplicationServices -framework AppKit -framework CoreServices \
            $$BDB_LIB_PATH/libdb_cxx.a \
            $$BOOST_LIB_PATH/libboost_system-mt.a \
            $$BOOST_LIB_PATH/libboost_filesystem-mt.a \
            $$BOOST_LIB_PATH/libboost_program_options-mt.a \
            $$BOOST_LIB_PATH/libboost_thread-mt.a \
            $$BOOST_LIB_PATH/libboost_chrono-mt.a
        DEFINES += MAC_OSX MSG_NOSIGNAL=0
        ICON = src/mac/artwork/FlapX.icns
        QMAKE_INFO_PLIST=src/mac/Info.plist
        # osx 10.9 has changed the stdlib default to libc++. To prevent some link error, you may need to use libstdc++
        QMAKE_CXXFLAGS += -stdlib=libstdc++
    
        QMAKE_CFLAGS_THREAD += -pthread
        QMAKE_CXXFLAGS_THREAD += -pthread
    }
    
    INCLUDEPATH += src/leveldb/include src/leveldb/helpers
    LIBS += $$PWD/src/leveldb/libleveldb.a $$PWD/src/leveldb/libmemenv.a
    SOURCES += src/txdb-leveldb.cpp
    !win32 {
        # we use QMAKE_CXXFLAGS_RELEASE even without RELEASE=1 because we use RELEASE to indicate linking preferences not -O preferences
        genleveldb.commands = cd $$PWD/src/leveldb && CC=$$QMAKE_CC CXX=$$QMAKE_CXX $(MAKE) OPT=\"$$QMAKE_CXXFLAGS $$QMAKE_CXXFLAGS_RELEASE\" libleveldb.a libmemenv.a
    } else {
        # make an educated guess about what the ranlib command is called
        isEmpty(QMAKE_RANLIB) {
            QMAKE_RANLIB = $$replace(QMAKE_STRIP, strip, ranlib)
        }
        LIBS += -lshlwapi
        #genleveldb.commands = cd $$PWD/src/leveldb && CC=$$QMAKE_CC CXX=$$QMAKE_CXX TARGET_OS=OS_WINDOWS_CROSSCOMPILE $(MAKE) OPT=\"$$QMAKE_CXXFLAGS $$QMAKE_CXXFLAGS_RELEASE\" libleveldb.a libmemenv.a && $$QMAKE_RANLIB $$PWD/src/leveldb/libleveldb.a && $$QMAKE_RANLIB $$PWD/src/leveldb/libmemenv.a
    }
    genleveldb.target = $$PWD/src/leveldb/libleveldb.a
    genleveldb.depends = FORCE
    PRE_TARGETDEPS += $$PWD/src/leveldb/libleveldb.a
    QMAKE_EXTRA_TARGETS += genleveldb
    # Gross ugly hack that depends on qmake internals, unfortunately there is no other way to do it.
    QMAKE_CLEAN += $$PWD/src/leveldb/libleveldb.a; cd $$PWD/src/leveldb ; $(MAKE) clean
    
    # regenerate src/build.h
    !windows|contains(USE_BUILD_INFO, 1) {
        genbuild.depends = FORCE
        genbuild.commands = cd $$PWD; /bin/sh share/genbuild.sh $$OUT_PWD/build/build.h
        genbuild.target = $$OUT_PWD/build/build.h
        PRE_TARGETDEPS += $$OUT_PWD/build/build.h
        QMAKE_EXTRA_TARGETS += genbuild
        DEFINES += HAVE_BUILD_INFO
    }
    
    contains(USE_O3, 1) {
        message(Building O3 optimization flag)
        QMAKE_CXXFLAGS_RELEASE -= -O2
        QMAKE_CFLAGS_RELEASE -= -O2
        QMAKE_CXXFLAGS += -O3
        QMAKE_CFLAGS += -O3
    }
    
    *-g++-32 {
        message("32 platform, adding -msse2 flag")
    
        QMAKE_CXXFLAGS += -msse2
        QMAKE_CFLAGS += -msse2
    }
    
    QMAKE_CXXFLAGS_WARN_ON = -fdiagnostics-show-option -Wall -Wextra -Wno-ignored-qualifiers -Wformat-security -Wno-unused-parameter -Wstack-protector
    
    # Input
    DEPENDPATH += src src/json src/qt
    HEADERS += src/qt/bitcoingui.h \
        src/qt/transactiontablemodel.h \
        src/qt/addresstablemodel.h \
        src/qt/optionsdialog.h \
        src/qt/coincontroldialog.h \
        src/qt/coincontroltreewidget.h \
        src/qt/sendcoinsdialog.h \
        src/qt/addressbookpage.h \
        src/qt/charitydialog.h \
        src/qt/signverifymessagedialog.h \
        src/qt/aboutdialog.h \
        src/qt/editaddressdialog.h \
        src/qt/bitcoinaddressvalidator.h \
        src/qt/intro.h \
        src/qt/calcdialog.h \
        src/alert.h \
        src/addrman.h \
        src/base58.h \
        src/bignum.h \
        src/chainparams.h \
        src/chainparamsseeds.h \
        src/checkpoints.h \
        src/compat.h \
        src/coincontrol.h \
        src/sync.h \
        src/util.h \
        src/hash.h \
        src/uint256.h \
        src/kernel.h \
        src/scrypt.h \
        src/pbkdf2.h \
        src/zerocoin/Accumulator.h \
        src/zerocoin/AccumulatorProofOfKnowledge.h \
        src/zerocoin/Coin.h \
        src/zerocoin/CoinSpend.h \
        src/zerocoin/Commitment.h \
        src/zerocoin/ParamGeneration.h \
        src/zerocoin/Params.h \
        src/zerocoin/SerialNumberSignatureOfKnowledge.h \
        src/zerocoin/SpendMetaData.h \
        src/zerocoin/ZeroTest.h \
        src/zerocoin/Zerocoin.h \
        src/serialize.h \
        src/core.h \
        src/main.h \
        src/miner.h \
        src/net.h \
        src/key.h \
        src/db.h \
        src/txdb.h \
        src/walletdb.h \
        src/script.h \
        src/init.h \
        src/mruset.h \
        src/json/json_spirit_writer_template.h \
        src/json/json_spirit_writer.h \
        src/json/json_spirit_value.h \
        src/json/json_spirit_utils.h \
        src/json/json_spirit_stream_reader.h \
        src/json/json_spirit_reader_template.h \
        src/json/json_spirit_reader.h \
        src/json/json_spirit_error_position.h \
        src/json/json_spirit.h \
        src/qt/clientmodel.h \
        src/qt/guiutil.h \
        src/qt/transactionrecord.h \
        src/qt/guiconstants.h \
        src/qt/optionsmodel.h \
        src/qt/monitoreddatamapper.h \
        src/qt/transactiondesc.h \
        src/qt/transactiondescdialog.h \
        src/qt/bitcoinamountfield.h \
        src/wallet.h \
        src/keystore.h \
        src/qt/transactionfilterproxy.h \
        src/qt/transactionview.h \
        src/qt/walletmodel.h \
        src/bitcoinrpc.h \
        src/qt/overviewpage.h \
        src/qt/csvmodelwriter.h \
        src/crypter.h \
        src/qt/sendcoinsentry.h \
        src/qt/qvalidatedlineedit.h \
        src/qt/bitcoinunits.h \
        src/qt/qvaluecombobox.h \
        src/qt/askpassphrasedialog.h \
        src/protocol.h \
        src/qt/notificator.h \
        src/qt/qtipcserver.h \
        src/allocators.h \
        src/ui_interface.h \
        src/qt/rpcconsole.h \
        src/version.h \
        src/netbase.h \
        src/clientversion.h \
        src/qt/shoppingpage.h \
        src/qt/networkpage.h \
        src/threadsafety.h
    
    SOURCES += src/qt/bitcoin.cpp src/qt/bitcoingui.cpp \
        src/qt/transactiontablemodel.cpp \
        src/qt/addresstablemodel.cpp \
        src/qt/optionsdialog.cpp \
        src/qt/sendcoinsdialog.cpp \
        src/qt/coincontroldialog.cpp \
        src/qt/coincontroltreewidget.cpp \
        src/qt/addressbookpage.cpp \
        src/qt/charitydialog.cpp \
        src/qt/signverifymessagedialog.cpp \
        src/qt/aboutdialog.cpp \
        src/qt/editaddressdialog.cpp \
        src/qt/bitcoinaddressvalidator.cpp \
        src/qt/calcdialog.cpp \
        src/qt/intro.cpp \
        src/alert.cpp \
        src/chainparams.cpp \
        src/version.cpp \
        src/sync.cpp \
        src/util.cpp \
        src/hash.cpp \
        src/netbase.cpp \
        src/key.cpp \
        src/script.cpp \
        src/core.cpp \
        src/main.cpp \
        src/miner.cpp \
        src/init.cpp \
        src/net.cpp \
        src/checkpoints.cpp \
        src/addrman.cpp \
        src/db.cpp \
        src/walletdb.cpp \
        src/qt/clientmodel.cpp \
        src/qt/guiutil.cpp \
        src/qt/transactionrecord.cpp \
        src/qt/optionsmodel.cpp \
        src/qt/monitoreddatamapper.cpp \
        src/qt/transactiondesc.cpp \
        src/qt/transactiondescdialog.cpp \
        src/qt/bitcoinstrings.cpp \
        src/qt/bitcoinamountfield.cpp \
        src/wallet.cpp \
        src/keystore.cpp \
        src/qt/transactionfilterproxy.cpp \
        src/qt/transactionview.cpp \
        src/qt/walletmodel.cpp \
        src/bitcoinrpc.cpp \
        src/rpcdump.cpp \
        src/rpcnet.cpp \
        src/rpcmining.cpp \
        src/rpcwallet.cpp \
        src/rpcblockchain.cpp \
        src/rpcrawtransaction.cpp \
        src/qt/overviewpage.cpp \
        src/qt/csvmodelwriter.cpp \
        src/crypter.cpp \
        src/qt/sendcoinsentry.cpp \
        src/qt/qvalidatedlineedit.cpp \
        src/qt/bitcoinunits.cpp \
        src/qt/qvaluecombobox.cpp \
        src/qt/askpassphrasedialog.cpp \
        src/protocol.cpp \
        src/qt/notificator.cpp \
        src/qt/qtipcserver.cpp \
        src/qt/rpcconsole.cpp \
        src/noui.cpp \
        src/kernel.cpp \
        src/scrypt-arm.S \
        src/scrypt-x86.S \
        src/scrypt-x86_64.S \
        src/scrypt.cpp \
        src/pbkdf2.cpp \
        src/zerocoin/Accumulator.cpp \
        src/zerocoin/AccumulatorProofOfKnowledge.cpp \
        src/zerocoin/Coin.cpp \
        src/zerocoin/CoinSpend.cpp \
        src/zerocoin/Commitment.cpp \
        src/zerocoin/ParamGeneration.cpp \
        src/zerocoin/Params.cpp \
        src/zerocoin/SerialNumberSignatureOfKnowledge.cpp \
        src/zerocoin/SpendMetaData.cpp \
        src/zerocoin/ZeroTest.cpp \
        src/qt/networkpage.cpp \
        src/qt/shoppingpage.cpp
    
    RESOURCES += \
        src/qt/bitcoin.qrc
    
    FORMS += \
        src/qt/forms/coincontroldialog.ui \
        src/qt/forms/sendcoinsdialog.ui \
        src/qt/forms/addressbookpage.ui \
        src/qt/forms/signverifymessagedialog.ui \
        src/qt/forms/aboutdialog.ui \
        src/qt/forms/editaddressdialog.ui \
        src/qt/forms/transactiondescdialog.ui \
        src/qt/forms/overviewpage.ui \
        src/qt/forms/sendcoinsentry.ui \
        src/qt/forms/askpassphrasedialog.ui \
        src/qt/forms/rpcconsole.ui \
        src/qt/forms/optionsdialog.ui \
        src/qt/forms/shoppingpage.ui \
        src/qt/forms/charitydialog.ui \
        src/qt/forms/intro.ui \
        src/qt/forms/calcdialog.ui \
        src/qt/forms/networkpage.ui
    
    contains(USE_QRCODE, 1) {
    HEADERS += src/qt/qrcodedialog.h
    SOURCES += src/qt/qrcodedialog.cpp
    FORMS += src/qt/forms/qrcodedialog.ui
    }
    
    CODECFORTR = UTF-8
    
    # for lrelease/lupdate
    # also add new translations to src/qt/bitcoin.qrc under translations/
    TRANSLATIONS = $$files(src/qt/locale/bitcoin_*.ts)
    
    isEmpty(QMAKE_LRELEASE) {
        win32:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]\\lrelease.exe
        else:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]/lrelease
    }
    isEmpty(QM_DIR):QM_DIR = $$PWD/src/qt/locale
    # automatically build translations, so they can be included in resource file
    TSQM.name = lrelease ${QMAKE_FILE_IN}
    TSQM.input = TRANSLATIONS
    TSQM.output = $$QM_DIR/${QMAKE_FILE_BASE}.qm
    TSQM.commands = $$QMAKE_LRELEASE ${QMAKE_FILE_IN} -qm ${QMAKE_FILE_OUT}
    TSQM.CONFIG = no_link
    QMAKE_EXTRA_COMPILERS += TSQM
    
    # "Other files" to show in Qt Creator
    OTHER_FILES += \
        doc/*.rst doc/*.txt doc/README README.md res/bitcoin-qt.rc \
        src/qt/res/tooltips/removeRecipientTooltip.png
    
    # platform specific defaults, if not overridden on command line
    isEmpty(BOOST_LIB_SUFFIX) {
        macx:BOOST_LIB_SUFFIX = -mt
        windows:BOOST_LIB_SUFFIX = -mt
    }
    
    isEmpty(BOOST_THREAD_LIB_SUFFIX) {
        win32:BOOST_THREAD_LIB_SUFFIX = $$BOOST_LIB_SUFFIX
        else:BOOST_THREAD_LIB_SUFFIX = $$BOOST_LIB_SUFFIX
    }
    
    isEmpty(BDB_LIB_PATH) {
        macx:BDB_LIB_PATH = /opt/local/lib/db48
    }
    
    isEmpty(BDB_LIB_SUFFIX) {
        macx:BDB_LIB_SUFFIX = -4.8
    }
    
    isEmpty(BDB_INCLUDE_PATH) {
        macx:BDB_INCLUDE_PATH = /opt/local/include/db48
    }
    
    isEmpty(BOOST_LIB_PATH) {
        macx:BOOST_LIB_PATH = /usr/local/opt/boost@1.57/lib
    }
    
    isEmpty(BOOST_INCLUDE_PATH) {
        macx:BOOST_INCLUDE_PATH = /usr/local/opt/boost@1.57/include
    }
    
    windows:DEFINES += WIN32
    windows:RC_FILE = src/qt/res/bitcoin-qt.rc
    
    windows:!contains(MINGW_THREAD_BUGFIX, 0) {
        # At least qmake's win32-g++-cross profile is missing the -lmingwthrd
        # thread-safety flag. GCC has -mthreads to enable this, but it doesn't
        # work with static linking. -lmingwthrd must come BEFORE -lmingw, so
        # it is prepended to QMAKE_LIBS_QT_ENTRY.
        # It can be turned off with MINGW_THREAD_BUGFIX=0, just in case it causes
        # any problems on some untested qmake profile now or in the future.
        DEFINES += _MT BOOST_THREAD_PROVIDES_GENERIC_SHARED_MUTEX_ON_WIN
        QMAKE_LIBS_QT_ENTRY = -lmingwthrd $$QMAKE_LIBS_QT_ENTRY
    }
    
    !windows:!macx {
        DEFINES += LINUX
        LIBS += -lrt
    }
    
    # Set libraries and includes at end, to use platform-defined defaults if not overridden
    INCLUDEPATH += $$BOOST_INCLUDE_PATH $$BDB_INCLUDE_PATH $$OPENSSL_INCLUDE_PATH $$QRENCODE_INCLUDE_PATH
    LIBS += $$join(BOOST_LIB_PATH,,-L,) $$join(BDB_LIB_PATH,,-L,) $$join(OPENSSL_LIB_PATH,,-L,) $$join(QRENCODE_LIB_PATH,,-L,)
    LIBS += -lssl -lcrypto -ldb_cxx$$BDB_LIB_SUFFIX
    # -lgdi32 has to happen after -lcrypto (see  #681)
    windows:LIBS += -lws2_32 -lshlwapi -lmswsock -lole32 -loleaut32 -luuid -lgdi32
    LIBS += -lboost_system$$BOOST_LIB_SUFFIX -lboost_filesystem$$BOOST_LIB_SUFFIX -lboost_program_options$$BOOST_LIB_SUFFIX -lboost_thread$$BOOST_THREAD_LIB_SUFFIX
    windows:LIBS += -lboost_chrono$$BOOST_LIB_SUFFIX
    
    contains(RELEASE, 1) {
        !windows:!macx {
            # Linux: turn dynamic linking back on for c/c++ runtime libraries
            LIBS += -Wl,-Bdynamic
        }
    }
    
    system($$QMAKE_LRELEASE -silent $$_PRO_FILE_)
    
    

  • Lifetime Qt Champion

    Are you building from the command line of Qt Creator ?



  • @SGaist said in Undefined symbols for architecture x86_64:

    Are you building from the command line of Qt Creator ?

    i am using qt creator

    also i am getting a new boost error

    In file included from src/bitcoinrpc.cpp:11:
    In file included from src/chainparams.h:9:
    In file included from src/bignum.h:10:
    src/serialize.h:18:10: fatal error: 'boost/type_traits/is_fundamental.hpp' file not found
    #include <boost/type_traits/is_fundamental.hpp>
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    1 error generated.
    make[1]: *** [build/bitcoinrpc.o] Error 1
    make: *** [release] Error 2
    14:00:37: The process "/usr/bin/make" exited with code 2.
    Error while building/deploying project flapx-qt (kit: QT 5.11)
    When executing step "Make"
    

    got past that error by switching to a different version of boost


  • Lifetime Qt Champion

    Did you check where that header can be found on your computer ?



  • i did and i am trying to compile a different project after getting the last two compiled

    this is the error i am getting now

    src/qt/multisenddialog.cpp:76:25: error: member access into incomplete type 'QStyle'
    ui->message->style()->polish(ui->message);
    ^
    /usr/local/Qt-5.11.0/lib/QtWidgets.framework/Headers/qwidget.h:67:7: note: forward declaration of 'QStyle'
    class QStyle;
    ^
    src/qt/multisenddialog.cpp:90:29: error: member access into incomplete type 'QStyle'
    ui->message->style()->polish(ui->message);
    ^
    /usr/local/Qt-5.11.0/lib/QtWidgets.framework/Headers/qwidget.h:67:7: note: forward declaration of 'QStyle'
    class QStyle;
    ^
    src/qt/multisenddialog.cpp:105:29: error: member access into incomplete type 'QStyle'
    ui->message->style()->polish(ui->message);
    ^
    /usr/local/Qt-5.11.0/lib/QtWidgets.framework/Headers/qwidget.h:67:7: note: forward declaration of 'QStyle'
    class QStyle;
    ^
    src/qt/multisenddialog.cpp:113:29: error: member access into incomplete type 'QStyle'
    ui->message->style()->polish(ui->message);
    ^
    /usr/local/Qt-5.11.0/lib/QtWidgets.framework/Headers/qwidget.h:67:7: note: forward declaration of 'QStyle'
    class QStyle;
    ^
    src/qt/multisenddialog.cpp:125:25: error: member access into incomplete type 'QStyle'
    ui->message->style()->polish(ui->message);
    ^
    /usr/local/Qt-5.11.0/lib/QtWidgets.framework/Headers/qwidget.h:67:7: note: forward declaration of 'QStyle'
    class QStyle;
    ^
    src/qt/multisenddialog.cpp:188:25: error: member access into incomplete type 'QStyle'
    ui->message->style()->polish(ui->message);
    ^
    /usr/local/Qt-5.11.0/lib/QtWidgets.framework/Headers/qwidget.h:67:7: note: forward declaration of 'QStyle'
    class QStyle;
    ^
    src/qt/multisenddialog.cpp:204:25: error: member access into incomplete type 'QStyle'
    ui->message->style()->polish(ui->message);
    ^
    /usr/local/Qt-5.11.0/lib/QtWidgets.framework/Headers/qwidget.h:67:7: note: forward declaration of 'QStyle'
    class QStyle;
    ^
    7 errors generated.
    make: *** [build/multisenddialog.o] Error 1
    12:10:45: The process "/usr/bin/make" exited with code 2.
    Error while building/deploying project 1337-qt (kit: QT 5.11)
    When executing step "Make"
    12:10:45: Elapsed time: 00:09.
    

  • Lifetime Qt Champion

    You didn't include QStyle in multisenddialog.cpp.



  • @SGaist said in Undefined symbols for architecture x86_64:

    You didn't include QStyle in multisenddialog.cpp.

    thank you so much! i added #include <QStyle> at the top and it went past that error to another that i know how to fix!

    thank you very much for your help!


  • Lifetime Qt Champion

    You're welcome !

    Since you have it working now, please mark the thread as solved using the "Topic Tools" button so other forum users may know a solution has been found :)


Log in to reply