在使用 QT 6.1 和操作系统 Ubuntu 20.04 创建的 QT/QML 项目中,我将使用 QTMapView。为此,我尝试使用以下命令安装 QTLocation 和 QTPosition:
sudo apt install qml-module-qtlocation qml-module-qtpositioning
根据以下主题的建议:
QtLocation 和 QtPositioning 未安装
之后,我尝试使用以下代码在 QML 视图中导入 QTLocation 和 QTPosition
import QtLocation 5.12
import QtPositioning 5.12
但是我在两次导入时都收到了“未找到 QML 模块”消息。
下面,您还可以找到项目的 CMakeLists.txt 文件:
cmake_minimum_required(VERSION 3.14)
project(myapp VERSION 0.1 LANGUAGES CXX)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(QT NAMES Qt6 COMPONENTS Core Quick REQUIRED)
find_package(Qt6 COMPONENTS Core Quick REQUIRED)
set(CMAKE_EXPORT_COMPILE_COMMANDS 1)
set(PROJECT_SOURCES
main.cpp
qml.qrc
images.qrc
)
qt_add_executable(myapp
MANUAL_FINALIZATION
${PROJECT_SOURCES}
)
target_compile_definitions(myapp
PRIVATE $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:QT_QML_DEBUG>)
target_link_libraries(myapp
PRIVATE Qt6::Core Qt6::Quick)
set_target_properties(myapp PROPERTIES
QT_QML_MODULE_VERSION 1.0
QT_QML_MODULE_URI com.my.myapp
)
list(APPEND QML_IMPORT_PATH .)
qt6_qml_type_registration(myapp)
qt_import_qml_plugins(myapp)
qt_finalize_executable(myapp)
我是不是漏掉了什么?我该如何解决这个问题并正确导入地图组件?非常感谢;我尽可能详细地说明了一切,但如果您需要其他信息,请随时询问我。