macdeployqt can't find files at "/opt/local/lib/lib/xxx



  • When building random alt-coin qt-wallets using macports and Qt 5.3.2
    Running macdeployqt seems to look for particular dependencies in an incorrect location.
    In this case adding an extra /lib

    The wallet-Qt runs fine prior to deployment while macdeployqt

    ERROR: no file at "/opt/local/lib/lib/libdb_cxx-6.0.dylib" 
    

    running otool shows nothing amiss

    $otool -L wallet-Qt.app/Contents/MacOS/wallet-Qt 
    /opt/local/lib/db60/libdb_cxx-6.0.dylib (compatibility version 0.0.0, current version 0.0.0)
    

    Attempting to change it via install_name_tool has no effect.

    install_name_tool -change "/opt/local/lib/lib/db60/libdb_cxx-6.0.dylib" "/opt/local/lib/db60/libdb_cxx-6.0.dylib" Generic-Qt.app/Contents/MacOS/Generic-Qt
    

    The only way to actually deploy is to manually copy the file and using install_name_tool to change to "@executable_path/../Frameworks/libdb_cxx-6.0.dylib"

    Where does this location featuring the extra /lib macdeployqt uses come from?

    notes.
    I'm using Qt creator 5.3.2.
    I have no problems deploying with db4.8, it's only using db6.0


  • Lifetime Qt Champion

    Hi,

    IIRC, there was a bug in macdeployqt at some point while handling path containing lib. I'd recommend if possible to update your Qt version or if not possible, to compile a more recent version of macdeployqt.



  • I just noticed this in the how to build the peerunity qt for osx.
    I managed to read that numerous times without ever appreciating it's content :p

    A simple work around in plain sight

    1.  Sym-link some shit
    
    sudo ln -s /opt/local/lib /opt/local/lib/lib
    

    https://github.com/Peerunity/Peerunity/blob/master/doc/build-osx-brew.txt#L67


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.