Ich habe die folgenden fehlenden Pakete installiert:
sudo apt-get install qtbase5-dev
sudo apt-get install qtdeclarative5-dev
Das Anhängen irgendeines Präfixes ist jetzt nicht erforderlich:
CMakeList:
:~/junk/qtquick_hello_cmake$ cat CMakeLists.txt
cmake_minimum_required(VERSION 2.8.12)
project(qtquick_hello_cmake)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
find_package(Qt5 COMPONENTS Quick Core REQUIRED)
qt5_add_resources(RESOURCES qml.qrc)
add_executable(${PROJECT_NAME} "main.cpp" "qml.qrc")
qt5_use_modules(${PROJECT_NAME} Quick Core)
target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Quick)
Neue Ausgabe:
:~/junk/qtquick_hello_cmake$ ls
build CMakeLists.txt main.cpp main.qml qml.qrc
:~/junk/qtquick_hello_cmake$ cd build/
:~/junk/qtquick_hello_cmake/build$ rm -rf *
:~/junk/qtquick_hello_cmake/build$ cmake ../
-- The C compiler identification is GNU 4.8.4
-- The CXX compiler identification is GNU 4.8.4
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/.../junk/qtquick_hello_cmake/build
Fehler sind jetzt weg.
Dank an:
https://answers.ros.org/question/236324/could-not-find-a-package-configuration-file-provided-by-qt5widgets/
https://askubuntu.com/questions/508503/whats-the-development-package-for-qt5-in-14-04
Für macOS exportieren Sie die folgende Variable in das Terminal.
export CMAKE_PREFIX_PATH=/usr/local/Cellar/qt5/5.15.1/
Möglicherweise gibt es eine andere Version, überprüfen Sie, welche Sie haben, und ändern Sie die letzte Pfadkomponente entsprechend.
Geben Sie die Build-Neukonfiguration aus
cmake ../
CMake-Fehlermeldung über fehlgeschlagenen find_package
und Festlegen von CMAKE_PREFIX_PATH Variable
Fügen Sie das Installationspräfix "Qt5" zu CMAKE_PREFIX_PATH
hinzu
ist irgendwie irreführend. Es spricht nur von "Installationspräfix", aber diese Installation ist immer noch require Qt5Config.cmake
enthalten oder qt5-config.cmake
enthaltene Dateien, damit sie von find_package
gefunden werden können .
Aber die Nachricht
Wenn "Qt5" ein separates Entwicklungspaket oder SDK bereitstellt, vergewissern Sie sich, dass es installiert wurde.
ist klar:
Man muss ein Entwicklungspaket installieren, das die erforderlichen Konfigurationsdateien enthält.
Alles Obige gilt nur für CONFIG Modus von find_package
, wenn das „Find“-Skript weder von CMake noch von einem CMake-Projekt bereitgestellt wird, das diesen Befehl verwendet.