Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. Default QtCreator QML Quick Controls Project Fails To Link
Forum Updated to NodeBB v4.3 + New Features

Default QtCreator QML Quick Controls Project Fails To Link

Scheduled Pinned Locked Moved Unsolved QML and Qt Quick
10 Posts 2 Posters 1.5k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    Jman006
    wrote on last edited by
    #1

    I have been trying for a little bit to get a QML Quick Controls 2 project to build for iOS using CMake. Everything seems to build just fine, but the link step fails. The errors can be seen on my pastbin post:
    https://pastebin.com/Mm07v7k1

    I know QML can compile and link for iOS (both a device and simulator) because I can use QtCreator to build the QML Gallery example: https://doc.qt.io/qt-5.10/qtquickcontrols2-gallery-example.html with no issues.

    Even empty QtCreator generated projects utilizing CMake do not build to completion, so I thought I would ask here for help.

    I suspect it has something to do with linking and importing the appropriate plugins that come packaged with Qt.

    Here are my files for reference.

    # CMakeLists.txt
    cmake_minimum_required(
        VERSION
            3.7.1
    )
    
    project(
        QMLGallery
    )
    
    find_package(Qt5Core REQUIRED)
    find_package(Qt5Gui REQUIRED)
    find_package(Qt5Widgets REQUIRED)
    find_package(Qt5Quick REQUIRED)
    find_package(Qt5Qml REQUIRED)
    find_package(Qt5QuickControls2 REQUIRED)
    
    ######################################################################
    find_library(
        Qt5Quick2Plugin
        NAMES
            libqtquick2plugin.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick.2
    )
    
    find_library(
        Qt5QuickControls2Plugin
        NAMES
            libqtquickcontrols2plugin.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2
    )
    
    find_library(
        Qt5QuickTemplates2Plugin
        NAMES
            libqtquicktemplates2plugin.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Templates.2
    )
    
    find_library(
        Qt5QuickWindow2Plugin
        NAMES
            libwindowplugin.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Window.2
    )
    
    find_library(
        Qt5QuickControls2MaterialStylePlugin
        NAMES
            libqtquickcontrols2materialstyleplugin.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2/Material
    )
    
    find_library(
        Qt5QuickControls2UniversalStylePlugin
        NAMES
            libqtquickcontrols2Universalstyleplugin.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2/Universal
    )
    
    find_library(
        Qt5QMLSettingsPlugin
        NAMES
            libqmlsettingsplugin.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/Qt/labs/settings
    )
    
    find_library(
        Qt5IOSPlatformPlugin
        NAMES
            libqios.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/plugins/platforms
    )
    
    ###########################
    
    find_library(
        Qt5Quick2PluginD
        NAMES
            libqtquick2plugin_debug.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick.2
    )
    
    find_library(
        Qt5QuickControls2PluginD
        NAMES
            libqtquickcontrols2plugin_debug.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2
    )
    
    find_library(
        Qt5QuickTemplates2PluginD
        NAMES
            libqtquicktemplates2plugin_debug.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Templates.2
    )
    
    find_library(
        Qt5QuickWindow2PluginD
        NAMES
            libwindowplugin_debug.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Window.2
    )
    
    find_library(
        Qt5QuickControls2MaterialStylePluginD
        NAMES
            libqtquickcontrols2materialstyleplugin_debug.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2/Material
    )
    
    find_library(
        Qt5QuickControls2UniversalStylePluginD
        NAMES
            libqtquickcontrols2Universalstyleplugin_debug.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2/Universal
    )
    
    find_library(
        Qt5QMLSettingsPluginD
        NAMES
            libqmlsettingsplugin_debug.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/qml/Qt/labs/settings
    )
    
    find_library(
        Qt5IOSPlatformPluginD
        NAMES
            libqios_debug.a
        HINTS
            /Users/daddymac/Qt/5.10.1/ios/plugins/platforms
    )
    
    ######################################################################
    
    set(CMAKE_INCLUDE_CURRENT_DIR "ON")
    set(CMAKE_AUTOMOC "ON")
    set(CMAKE_AUTORCC "ON")
    
    set(CMAKE_CXX_VERSION "11")
    
    
    # qt5_add_resources(
    #     RESOURCES
    #         ${CMAKE_CURRENT_SOURCE_DIR}/Resources.qrc
    #     OPTIONS --name Resources
        
    # )
    
    set(EXECUTABLE_TARGET
        "QMLGalleryApp"
    )
    
    set(
        DEFINITION_FILES
        ${CMAKE_CURRENT_SOURCE_DIR}/gallery.cpp
    )
    
    set(
        INCLUDE_PATHS
        ${CMAKE_CURRENT_SOURCE_DIR}
        ${Qt5Core_INCLUDE_DIRS}
        ${Qt5Widgets_INCLUDE_DIRS}
        ${Qt5Gui_INCLUDE_DIRS}
        ${Qt5Quick2_INCLUDE_DIRS}
        ${Qt5QuickControls2_INCLUDE_DIRS}
        /Users/daddymac/Qt/5.10.1/ios/mkspecs/common/uikit
    )
    
    set(
        LINK_TARGETS
        ${Qt5Core_LIBRARIES}
        ${Qt5Widgets_LIBRARIES}
        ${Qt5Gui_LIBRARIES}
        ${Qt5Quick2_LIBRARIES}
        ${Qt5QuickControls2_LIBRARIES}
        
        ${Qt5QMLSettingsPlugin}
        ${Qt5QuickControls2UniversalStylePlugin}
        ${Qt5QuickControls2MaterialStylePlugin}
        ${Qt5QuickWindow2Plugin}
        ${Qt5QuickTemplates2Plugin}
        ${Qt5QuickControls2Plugin}
        ${Qt5Quick2Plugin}
        ${Qt5IOSPlatformPlugin}
        
        ${Qt5QMLSettingsPluginD}
        ${Qt5QuickControls2UniversalStylePluginD}
        ${Qt5QuickControls2MaterialStylePluginD}
        ${Qt5QuickWindow2PluginD}
        ${Qt5QuickTemplates2PluginD}
        ${Qt5QuickControls2PluginD}
        ${Qt5Quick2PluginD}
        ${Qt5IOSPlatformPluginD}
    )
    
    ######################################################################
    
    add_executable(${EXECUTABLE_TARGET}
        ${DEFINITION_FILES}
    )
    
    target_include_directories(${EXECUTABLE_TARGET}
        PUBLIC
            ${INCLUDE_PATHS}
    }
    )
    
    target_link_libraries(${EXECUTABLE_TARGET}
        PUBLIC
            ${LINK_TARGETS}
    )
    

    The project itself is the gallery example I mentioned above. Any ideas what is causing the link issues?

    1 Reply Last reply
    0
    • jpnurmiJ Offline
      jpnurmiJ Offline
      jpnurmi
      wrote on last edited by
      #2

      Try find_package(Qt5QuickTemplates2 REQUIRED) and then adding ${Qt5QuickTemplates2_LIBRARIES} to LINK_TARGETS.

      J 1 Reply Last reply
      1
      • jpnurmiJ jpnurmi

        Try find_package(Qt5QuickTemplates2 REQUIRED) and then adding ${Qt5QuickTemplates2_LIBRARIES} to LINK_TARGETS.

        J Offline
        J Offline
        Jman006
        wrote on last edited by
        #3

        @jpnurmi said in Default QtCreator QML Quick Controls Project Fails To Link:

        Try find_package(Qt5QuickTemplates2 REQUIRED) and then adding ${Qt5QuickTemplates2_LIBRARIES} to LINK_TARGETS

        There is no Config.cmake files for Qt5Templates2. There is a plugin that I tried linking to as you can see in my CMakeLists.txt file. I also have the required Q_IMPORT_PLUGIN(QtQuickTemplates2Plugin); inside the gallery.cpp file.

        J 1 Reply Last reply
        0
        • J Jman006

          @jpnurmi said in Default QtCreator QML Quick Controls Project Fails To Link:

          Try find_package(Qt5QuickTemplates2 REQUIRED) and then adding ${Qt5QuickTemplates2_LIBRARIES} to LINK_TARGETS

          There is no Config.cmake files for Qt5Templates2. There is a plugin that I tried linking to as you can see in my CMakeLists.txt file. I also have the required Q_IMPORT_PLUGIN(QtQuickTemplates2Plugin); inside the gallery.cpp file.

          J Offline
          J Offline
          Jman006
          wrote on last edited by
          #4

          The source code branch seems to package QQuickTemplates2 with QtQuickControls2, so I think those should be linking in.

          1 Reply Last reply
          0
          • jpnurmiJ Offline
            jpnurmiJ Offline
            jpnurmi
            wrote on last edited by
            #5

            Hmm, the missing symbols are in libQt5QuickTemplates2, not in libqtquicktemplates2plugin. As of today, the QtQuickTemplates2 library is indeed not public. I suppose Qt generates .cmake files only for public libraries. Sorry, I'm not using CMake with Qt so I don't know the exact details, but somehow you must get it to link with libQt5QuickTemplates2. :)

            J 1 Reply Last reply
            0
            • jpnurmiJ jpnurmi

              Hmm, the missing symbols are in libQt5QuickTemplates2, not in libqtquicktemplates2plugin. As of today, the QtQuickTemplates2 library is indeed not public. I suppose Qt generates .cmake files only for public libraries. Sorry, I'm not using CMake with Qt so I don't know the exact details, but somehow you must get it to link with libQt5QuickTemplates2. :)

              J Offline
              J Offline
              Jman006
              wrote on last edited by
              #6

              @jpnurmi

              Do you know where in a Qt installation that library would be located?

              1 Reply Last reply
              0
              • jpnurmiJ Offline
                jpnurmiJ Offline
                jpnurmi
                wrote on last edited by jpnurmi
                #7

                Together with other libs (not plugins). You can run qmake -query from a specific Qt installation. Something like:

                $ ~/Qt/5.10.1/ios/bin/qmake -query QT_INSTALL_LIBS
                /Users/daddymac/Qt/5.10.1/ios/lib
                
                $ ls /Users/daddymac/Qt/5.10.1/ios/lib
                [...]
                libQt5QuickTemplates2.a
                [...]
                
                J 1 Reply Last reply
                1
                • jpnurmiJ jpnurmi

                  Together with other libs (not plugins). You can run qmake -query from a specific Qt installation. Something like:

                  $ ~/Qt/5.10.1/ios/bin/qmake -query QT_INSTALL_LIBS
                  /Users/daddymac/Qt/5.10.1/ios/lib
                  
                  $ ls /Users/daddymac/Qt/5.10.1/ios/lib
                  [...]
                  libQt5QuickTemplates2.a
                  [...]
                  
                  J Offline
                  J Offline
                  Jman006
                  wrote on last edited by
                  #8

                  @jpnurmi
                  I understand now. I still am getting link errors. Now it looks like there are definitions missing that are in the libpng (i.e. libqtlibpng.a)

                  Is there some qmake query that I can run on a static library to get all of its dependent Qt libraries or something? Or even if I could run the query on a bare bones .pro project and see all of the resulting static libraries and their locations, I could probably resolve the link issues.

                  1 Reply Last reply
                  0
                  • J Offline
                    J Offline
                    Jman006
                    wrote on last edited by
                    #9

                    So I updated my CMakeLists.txt file to represent what is generated by qmake in QtCreator as far as the link and include items.

                    cmake_minimum_required(
                        VERSION
                            3.7.1
                    )
                    
                    project(
                        QMLGallery
                    )
                    
                    set(CMAKE_INCLUDE_CURRENT_DIR "ON")
                    set(CMAKE_AUTOMOC "ON")
                    set(CMAKE_AUTORCC "ON")
                    
                    set(EXECUTABLE_TARGET
                        "QMLGalleryApp"
                    )
                    
                    set(
                        DEFINITION_FILES
                        ${CMAKE_CURRENT_SOURCE_DIR}/gallery.cpp
                    )
                    
                    set(
                        INCLUDE_PATHS
                        ${CMAKE_CURRENT_SOURCE_DIR}
                        ${CMAKE_CURRENT_BINARY_DIR}
                        /Users/daddymac/Qt/5.10.1/ios/mkspecs/common/uikit
                        /Users/daddymac/Qt/5.10.1/ios/include
                        /Users/daddymac/Qt/5.10.1/ios/include/QtQuickControls2
                        /Users/daddymac/Qt/5.10.1/ios/include/QtQuick
                        /Users/daddymac/Qt/5.10.1/ios/include/QtGui
                        /Users/daddymac/Qt/5.10.1/ios/include/QtQml
                        /Users/daddymac/Qt/5.10.1/ios/include/QtNetwork
                        /Users/daddymac/Qt/5.10.1/ios/include/QtCore
                        /Users/daddymac/Qt/5.10.1/ios/mkspecs/macx-ios-clang   
                    )
                    
                    add_executable(${EXECUTABLE_TARGET}
                        ${DEFINITION_FILES}
                    )
                    
                    target_include_directories(${EXECUTABLE_TARGET}
                        PUBLIC
                            ${INCLUDE_PATHS}
                    )
                    
                    macro(ADD_FRAMEWORK fwname appname path)
                        find_library(FRAMEWORK_${fwname}
                        NAMES ${fwname}
                        PATHS ${path}
                        NO_DEFAULT_PATH
                        )
                        
                        if( ${FRAMEWORK_${fwname}} STREQUAL FRAMEWORK_${fwname}-NOTFOUND)
                            MESSAGE(ERROR ": Framework ${fwname} not found")
                        else()
                            target_link_libraries(${appname} PUBLIC "${FRAMEWORK_${fwname}}/${fwname}")
                            MESSAGE(STATUS "Framework ${fwname} found at ${FRAMEWORK_${fwname}}")
                        endif()
                    endmacro(ADD_FRAMEWORK)
                    
                    add_framework(
                        Foundation
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        UIKit
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        QuartzCore
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        AudioToolbox
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        AssetsLibrary
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        MobileCoreServices
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        CoreFoundation
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        CoreGraphics
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        OpenGLES
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        CoreText
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        ImageIO
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    add_framework(
                        Security
                        ${EXECUTABLE_TARGET}
                        /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                    )
                    
                    target_link_libraries(${EXECUTABLE_TARGET}
                        PUBLIC
                        "-L/Users/daddymac/Qt/5.10.1/ios/lib"
                        "-L/Users/daddymac/Qt/5.10.1/ios/plugins/imageformats"
                        "-L/Users/daddymac/Qt/5.10.1/ios/plugins/platforms"
                        "-L/Users/daddymac/Qt/5.10.1/ios/plugins/qmltooling"
                        "-L/Users/daddymac/Qt/5.10.1/ios/plugins/bearer"
                        "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick.2"
                        "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Layouts"
                        "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2"
                        "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2/Material"
                        "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2/Universal"
                        "-L/Users/daddymac/Qt/5.10.1/ios/qml/Qt/labs/settings"
                        "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Templates.2"
                        "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Window.2"
                        "-lqios"
                        "-lQt5FontDatabaseSupport"
                        "-lqtfreetype"
                        "-lQt5GraphicsSupport"
                        "-lQt5ClipboardSupport"
                        "-lqgif"
                        "-lqicns"
                        "-lqico"
                        "-lqjpeg"
                        "-lqmacjp2"
                        "-lqtga"
                        "-lqtiff"
                        "-lqwbmp"
                        "-lqwebp"
                        "-lqmldbg_debugger"
                        "-lqmldbg_inspector"
                        "-lqmldbg_local"
                        "-lqmldbg_messages"
                        "-lqmldbg_native"
                        "-lqmldbg_nativedebugger"
                        "-lqmldbg_profiler"
                        "-lqmldbg_quickprofiler"
                        "-lqmldbg_server"
                        "-lQt5PacketProtocol"
                        "-lqmldbg_tcp"
                        "-lqgenericbearer"
                        "-lqtquick2plugin"
                        "-lqquicklayoutsplugin"
                        "-lqtquickcontrols2plugin"
                        "-lqtquickcontrols2materialstyleplugin"
                        "-lqtquickcontrols2universalstyleplugin"
                        "-lQt5QuickControls2"
                        "-lqmlsettingsplugin"
                        "-lqtquicktemplates2plugin"
                        "-lQt5QuickTemplates2"
                        "-lwindowplugin"
                        "-lQt5Quick"
                        "-lQt5Qml"
                        "-lQt5Gui"
                        "-lqtlibpng"
                        "-lqtharfbuzz"
                        "-lQt5Network"
                        "-lQt5Core"
                        "-lm"
                        "-lz"
                        "-lqtpcre2"
                    )
                    

                    A quick inspection looks like everything discussed so far has been included, but I am still getting reference errors.

                    https://pastebin.com/7vLqcPeP

                    J 1 Reply Last reply
                    0
                    • J Jman006

                      So I updated my CMakeLists.txt file to represent what is generated by qmake in QtCreator as far as the link and include items.

                      cmake_minimum_required(
                          VERSION
                              3.7.1
                      )
                      
                      project(
                          QMLGallery
                      )
                      
                      set(CMAKE_INCLUDE_CURRENT_DIR "ON")
                      set(CMAKE_AUTOMOC "ON")
                      set(CMAKE_AUTORCC "ON")
                      
                      set(EXECUTABLE_TARGET
                          "QMLGalleryApp"
                      )
                      
                      set(
                          DEFINITION_FILES
                          ${CMAKE_CURRENT_SOURCE_DIR}/gallery.cpp
                      )
                      
                      set(
                          INCLUDE_PATHS
                          ${CMAKE_CURRENT_SOURCE_DIR}
                          ${CMAKE_CURRENT_BINARY_DIR}
                          /Users/daddymac/Qt/5.10.1/ios/mkspecs/common/uikit
                          /Users/daddymac/Qt/5.10.1/ios/include
                          /Users/daddymac/Qt/5.10.1/ios/include/QtQuickControls2
                          /Users/daddymac/Qt/5.10.1/ios/include/QtQuick
                          /Users/daddymac/Qt/5.10.1/ios/include/QtGui
                          /Users/daddymac/Qt/5.10.1/ios/include/QtQml
                          /Users/daddymac/Qt/5.10.1/ios/include/QtNetwork
                          /Users/daddymac/Qt/5.10.1/ios/include/QtCore
                          /Users/daddymac/Qt/5.10.1/ios/mkspecs/macx-ios-clang   
                      )
                      
                      add_executable(${EXECUTABLE_TARGET}
                          ${DEFINITION_FILES}
                      )
                      
                      target_include_directories(${EXECUTABLE_TARGET}
                          PUBLIC
                              ${INCLUDE_PATHS}
                      )
                      
                      macro(ADD_FRAMEWORK fwname appname path)
                          find_library(FRAMEWORK_${fwname}
                          NAMES ${fwname}
                          PATHS ${path}
                          NO_DEFAULT_PATH
                          )
                          
                          if( ${FRAMEWORK_${fwname}} STREQUAL FRAMEWORK_${fwname}-NOTFOUND)
                              MESSAGE(ERROR ": Framework ${fwname} not found")
                          else()
                              target_link_libraries(${appname} PUBLIC "${FRAMEWORK_${fwname}}/${fwname}")
                              MESSAGE(STATUS "Framework ${fwname} found at ${FRAMEWORK_${fwname}}")
                          endif()
                      endmacro(ADD_FRAMEWORK)
                      
                      add_framework(
                          Foundation
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          UIKit
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          QuartzCore
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          AudioToolbox
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          AssetsLibrary
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          MobileCoreServices
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          CoreFoundation
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          CoreGraphics
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          OpenGLES
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          CoreText
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          ImageIO
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      add_framework(
                          Security
                          ${EXECUTABLE_TARGET}
                          /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks
                      )
                      
                      target_link_libraries(${EXECUTABLE_TARGET}
                          PUBLIC
                          "-L/Users/daddymac/Qt/5.10.1/ios/lib"
                          "-L/Users/daddymac/Qt/5.10.1/ios/plugins/imageformats"
                          "-L/Users/daddymac/Qt/5.10.1/ios/plugins/platforms"
                          "-L/Users/daddymac/Qt/5.10.1/ios/plugins/qmltooling"
                          "-L/Users/daddymac/Qt/5.10.1/ios/plugins/bearer"
                          "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick.2"
                          "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Layouts"
                          "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2"
                          "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2/Material"
                          "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Controls.2/Universal"
                          "-L/Users/daddymac/Qt/5.10.1/ios/qml/Qt/labs/settings"
                          "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Templates.2"
                          "-L/Users/daddymac/Qt/5.10.1/ios/qml/QtQuick/Window.2"
                          "-lqios"
                          "-lQt5FontDatabaseSupport"
                          "-lqtfreetype"
                          "-lQt5GraphicsSupport"
                          "-lQt5ClipboardSupport"
                          "-lqgif"
                          "-lqicns"
                          "-lqico"
                          "-lqjpeg"
                          "-lqmacjp2"
                          "-lqtga"
                          "-lqtiff"
                          "-lqwbmp"
                          "-lqwebp"
                          "-lqmldbg_debugger"
                          "-lqmldbg_inspector"
                          "-lqmldbg_local"
                          "-lqmldbg_messages"
                          "-lqmldbg_native"
                          "-lqmldbg_nativedebugger"
                          "-lqmldbg_profiler"
                          "-lqmldbg_quickprofiler"
                          "-lqmldbg_server"
                          "-lQt5PacketProtocol"
                          "-lqmldbg_tcp"
                          "-lqgenericbearer"
                          "-lqtquick2plugin"
                          "-lqquicklayoutsplugin"
                          "-lqtquickcontrols2plugin"
                          "-lqtquickcontrols2materialstyleplugin"
                          "-lqtquickcontrols2universalstyleplugin"
                          "-lQt5QuickControls2"
                          "-lqmlsettingsplugin"
                          "-lqtquicktemplates2plugin"
                          "-lQt5QuickTemplates2"
                          "-lwindowplugin"
                          "-lQt5Quick"
                          "-lQt5Qml"
                          "-lQt5Gui"
                          "-lqtlibpng"
                          "-lqtharfbuzz"
                          "-lQt5Network"
                          "-lQt5Core"
                          "-lm"
                          "-lz"
                          "-lqtpcre2"
                      )
                      

                      A quick inspection looks like everything discussed so far has been included, but I am still getting reference errors.

                      https://pastebin.com/7vLqcPeP

                      J Offline
                      J Offline
                      Jman006
                      wrote on last edited by
                      #10

                      @Jman006

                      Ok I made progress. This CMakeLists.txt is hardcoded for the iOS simulator. When I select the simulator in XCode, everything links properly. I still have a runtime error, but that is a different issue.

                      I'm still working on getting the both simulator and actual hardware versions to build. I'll post back the results.

                      1 Reply Last reply
                      0

                      • Login

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • Users
                      • Groups
                      • Search
                      • Get Qt Extensions
                      • Unsolved