qtmacdeploy does not deploy all compiled projects



  • Hi,
    I tear my hairs out on MAC.
    I know to relink external libraries.
    My trouble (the last I hope) is:
    My application is a modular (works with plugins), so My "solution" contains some lib projects and the application project.
    The application project does not need all other project (they are plugins).
    Only the application and dylib needed are deployed (not plugins).
    Is it possible to deploy my plugins with other dylib ?
    Or is qtmacdeploy useless ?

    thanks.
    sorry for my horrible english.


  • Lifetime Qt Champion

    Hi,

    What version of macOS are you using ?
    What version of the editor ?



  • I'm on MAC OS 10.12.5
    with Qt Creator 4.2.1 and Qt 5.7.1 clang 64Bits.


  • Lifetime Qt Champion

    Is your project structure visible somewhere ?



  • My main pro file is:

    TEMPLATE = subdirs
    
    SUBDIRS += \
        MdCore \
        MdWidgets \
        MediaCad \
        QtOpenGL \
        MdDimension \
        MdProfile \
        MdDrawing \
        MdPrint \
        MddwgParameters \
        MdOCC \
        MdCurvePE \
        MdGripPoints \
        MdBatch \
        MdDC3 \
        PlotSettingsValidator \
        MdTopo \
        Md3dImport \
        MdNet \
        MdScript \
        MdScript \
        MdLayer \
        MdInsert \
        MdDump \
        MdModelisation \
        MdPostScript \
        MdProperty \
        MdOpenGLTSE \
        MdText \
        MdZoom \
        MdView \
        MdHatch
    
    # where to find the sub projects - give the folders
    MdDC3.subdir = MdDC3
    MdBatch.subdir = MdBatch
    MdCore.subdir = MdCore
    MdWidgets.subdir  = MdWidgets
    MediaCad.subdir  = MediaCad
    MdDimension.subdir  = MdDimension
    QtOpenGL.subdir  = QtOpenGL
    MdProfile.subdir = MdProfile
    MdDrawing.subdir = MdDrawing
    MdPrint.subdir = MdPrint
    MddwgParameters.subdir = MddwgParameters
    MdCurvePE.subdir = MdCurvePE
    MdGripPoints.subdir = MdGripPoints
    MdOCC.subdir = MdOCC
    PlotSettingsValidator.subdir = PlotSettingsValidator
    MdTopo.subdir = MdTopo
    Md3dImport.subdir = Md3dImport
    MdNet.subdir = MdNet
    MdScript.subdir = MdScript
    MdLayer.subdir = MdLayer
    #MdPrinter.subdir = MdPrinter
    MdInsert.subdir = MdInsert
    MdDump.subdir = MdDump
    MdModelisation.subdir = MdModelisation
    MdPostScript.subdir = MdPostScript
    MdProperty.subdir = MdProperty
    MdOpenGLTSE.subdir = MdOpenGLTSE
    MdText.subdir = MdText
    MdZoom.subdir = MdZoom
    MdView.subdir = MdView
    MdHatch.subdir = MdHatch
    
    # what subproject depends on others
    MdDC3.depends = MdCore
    MdWidgets.depends = MdCore
    MediaCad.depends = MdCore MdWidgets
    MdModels.depends = MdCore
    MdDimension.depends = MdCore MdWidgets
    MdProfile.depends = MdCore MdWidgets
    MdDrawing.depends = MdCore MdWidgets MdOCC
    MdPrint.depends = MdCore PlotSettingsValidator MdWidgets
    MddwgParameters.depends = MdCore MdWidgets
    MdGripPoints.depends = MdCore MdWidgets MdOCC
    MdOCC.depends = MdCore
    MdCurvePE.depends = MdCore MdOCC
    PlotSettingsValidator.depends = MdCore
    MdTopo.depends = MdCore
    Md3dImport.depends = MdCore
    MdNet.depends = MdCore
    MdScript.depends = MdCore MdWidgets
    MdLayer.depends = MdCore MdWidgets
    MdInsert.depends = MdCore MdWidgets
    MdDump.depends = MdCore
    MdModelisation.depends = MdCore MdWidgets
    MdPostScript.depends = MdCore MdOCC
    MdProperty.depends = MdCore MdWidgets
    MdText.depends = MdCore MdWidgets
    MdZoom.depends = MdCore
    MdView.depends = MdCore
    MdHatch.depends = MdCore MdWidgets MdOCC
    
    

    Some subprojects are plugins, their pro files look like this:

    #-------------------------------------------------
    #
    # Project created by QtCreator 2016-12-04T10:42:05
    #
    #-------------------------------------------------
    
    QT       += widgets opengl
    
    TARGET = MdLayer
    TEMPLATE = lib
    
    DEFINES += MDLAYER_LIBRARY \
    _TOOLKIT_IN_DLL_ \
    
    include(../common.pri)
    
    DEFINES += VER_FILEDESCRIPTION_STR=\\\"$$DESCRIPT_MRX\\\"
    DEFINES += VER_INTERNALNAME_STR=\\\"MdLayer\\\"
    DEFINES += VER_ORIGINALFILENAME_STR=\\\"MdLayer.mrx\\\"
    
    CONFIG += plugin no_plugin_name_prefix
    
    TRANSLATIONS = translations/mdlayer_fr.ts \
    translations/mdlayer_en.ts \
    translations/mdlayer_de.ts \
    translations/mdlayer_es.ts \
    
    INCLUDEPATH += ../MdCore \
            ../MdWidgets \
            ../MdWidgets/colorWidgets \
            ../MdWidgets/utilsWidgets \
            ../MdWidgets/utilsWidgets/button \
            ../MdWidgets/utilsWidgets/combo \
            ../MdWidgets/utilsWidgets/label \
            ../MdWidgets/utilsWidgets/menu \
            ../MdWidgets/utilsWidgets/slider \
            ../MdWidgets/utilsWidgets/titlebar \
            ../MdWidgets/utilsWidgets/editor \
            ../MdWidgets/utilsWidgets/dock \
            ../MdWidgets/utilsWidgets/toolbar \
            ../MdWidgets/utilsWidgets/view \
            ../MdWidgets/utilsWidgets/widgets \
            ../MdModels \
            $$PWD/../$${INC_DIR} \
            $$PWD/../$${ODA_INC} \
            $$PWD/../$${ODA_EXT_SERVICE} \
    
    
    SOURCES += mdlayermodule.cpp \
        GUI/mdlayercombo.cpp \
        GUI/mdlayertoolbar.cpp \
        Models/mdlayertablemodel.cpp \
        GUI/mdlayerconfpanel.cpp \
        Models/mdlayeredittablemodel.cpp \
        GUI/mdlayerpalette.cpp \
        commands/layercmd.cpp \
        GUI/mdlineweightdialog.cpp \
        Models/mdlayerfiltermodel.cpp \
        mdmoduleuimng.cpp \
        GUI/mdtransparencydialog.cpp \
        GUI/mdlinetypedialog.cpp
    
    HEADERS += mdlayermodule.h \
        moduledefs.h \
        GUI/mdlayercombo.h \
        GUI/mdlayertoolbar.h \
        Models/mdlayertablemodel.h \
        GUI/mdlayerconfpanel.h \
        Models/mdlayeredittablemodel.h \
        GUI/mdlayerpalette.h \
        commands/layercmd.h \
        GUI/mdlineweightdialog.h \
        Models/mdlayerfiltermodel.h \
        mdmoduleuimng.h \
        GUI/mdtransparencydialog.h \
        GUI/mdlinetypedialog.h
    
    win32{
        RC_FILE = ../commonRC.rc
        CONFIG(debug, debug|release) {
            LIBS += -L$$PWD/$${DEBUG_DIR} -lMdCore \
                    -L$$PWD/$${DEBUG_DIR} -lMdWidgets \
    
            # Librairies ODA
            LIBS += -L$$PWD/../$${ODA_WIN_DEBUG_LIB} -lTD_Db \
             -L$$PWD/../$${ODA_WIN_DEBUG_LIB} -lTD_Root \
             -L$$PWD/../$${ODA_WIN_DEBUG_LIB} -lTD_Alloc \
             -L$$PWD/../$${ODA_WIN_DEBUG_LIB} -lTD_Ge \
             -L$$PWD/../$${ODA_WIN_DEBUG_LIB} -lTD_Gi \
             -L$$PWD/../$${ODA_WIN_DEBUG_LIB} -lTD_Gs \
             -L$$PWD/../$${ODA_WIN_DEBUG_LIB} -lTD_DbRoot \
            -ladvapi32
    
            DEPENDPATH += $$PWD/../lib/win32/debug
        }
        CONFIG(release, debug|release) {
            LIBS += -L$$PWD/$${RELEASE_DIR} -lMdCore \
                    -L$$PWD/$${RELEASE_DIR} -lMdWidgets \
    
            # Librairies ODA
            LIBS += -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_Db \
             -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_Root \
             -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_Alloc \
             -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_Ge \
             -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_Gi \
             -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_Gs \
             -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_DbRoot \
            -ladvapi32
    
            DEPENDPATH += $$PWD/../lib/win32/release
        }
        TARGET_EXT = $${ODA_SUFFIX}.$${MEDIACAD_EXT}
    }
    
    
    macx{
        LIBS+= -framework CoreFoundation
        CONFIG(debug, debug|release) {
            LIBS += -L$$PWD/$${DEBUG_DIR} -lMdCore \
                    -L$$PWD/$${DEBUG_DIR} -lMdWidgets \
    
            # Librairies ODA
            LIBS += -L$$PWD/../$${ODA_MAC_DYLIB} -lTD_Db \
             -L$$PWD/../$${ODA_MAC_DYLIB} -lTD_Root \
             -L$$PWD/../$${ODA_MAC_DEBUG_LIB} -lTD_Key \
             -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_Gi \
             -L$$PWD/../$${ODA_MAC_DYLIB} -lTD_Ge \
             -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_Gs \
             -L$$PWD/../$${ODA_MAC_DYLIB} -lTD_DbRoot \
             -L$$PWD/../$${ODA_MAC_DYLIB} -lsisl \
             -L$$PWD/../$${ODA_MAC_DYLIB} -lTD_Alloc
    
            QMAKE_LFLAGS_SONAME = -Wl,-install_name,$$OUT_PWD/../debug/
            DEPENDPATH += $$PWD/../lib/macx/debug
            target.path = $$PWD/$${DEBUG_DIR}
        }
        CONFIG(release, debug|release) {
            LIBS += -L$$PWD/$${RELEASE_DIR} -lMdCore \
                    -L$$PWD/$${RELEASE_DIR} -lMdWidgets \
    
            # Librairies ODA
            LIBS += -L$$PWD/../$${ODA_MAC_DYLIB} -lTD_Db \
             -L$$PWD/../$${ODA_MAC_DYLIB} -lTD_Root \
             -L$$PWD/../$${ODA_MAC_DEBUG_LIB} -lTD_Key \
             -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_Gi \
             -L$$PWD/../$${ODA_MAC_DYLIB} -lTD_Ge \
             -L$$PWD/../$${ODA_WIN_RELEASE_LIB} -lTD_Gs \
             -L$$PWD/../$${ODA_MAC_DYLIB} -lTD_DbRoot \
             -L$$PWD/../$${ODA_MAC_DYLIB} -lsisl \
             -L$$PWD/../$${ODA_MAC_DYLIB} -lTD_Alloc
    
            QMAKE_LFLAGS_SONAME = -Wl,-install_name,$$OUT_PWD/../release/
            DEPENDPATH += $$PWD/../lib/macx/release
            target.path = $$PWD/$${RELEASE_DIR}
        }
        QMAKE_EXTENSION_SHLIB = $${MEDIACAD_EXT}
    }
    
    macx {
        INSTALLS += target
    }
    
    FORMS += \
        GUI/mdlayercombo.ui \
        GUI/mdlayerconfpanel.ui \
        GUI/mdlineweightdialog.ui \
        GUI/mdtransparencydialog.ui \
        GUI/mdlinetypedialog.ui
    
    RESOURCES += \
        resources.qrc
    
    

Log in to reply
 

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