GNU/Linux >> Tutoriels Linux >  >> Linux

CMAKE_PREFIX_PATH n'aide pas CMake à trouver Qt5

J'ai installé les packages manquants suivants :

sudo apt-get install qtbase5-dev
sudo apt-get install qtdeclarative5-dev

Attacher n'importe quel type de préfixe n'est plus nécessaire maintenant :

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)

Nouvelle sortie :

:~/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

Les erreurs ont disparu maintenant.

Grâce à:
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


Pour macOS, exportez la variable suivante dans le terminal.

export CMAKE_PREFIX_PATH=/usr/local/Cellar/qt5/5.15.1/  

Il peut y avoir une autre version, vérifiez celle que vous avez et modifiez le dernier composant de chemin en conséquence.

Émettre la reconfiguration de build

cmake ../

Message d'erreur CMake à propos de l'échec de find_package et en définissant CMAKE_PREFIX_PATH variables

Ajoutez le préfixe d'installation de "Qt5" à CMAKE_PREFIX_PATH

est en quelque sorte trompeur. Il ne parle que de "préfixe d'installation", mais cette installation nécessite toujours contenir Qt5Config.cmake ou qt5-config.cmake fichiers à l'intérieur pour être détectables par find_package .

Mais le message

Si "Qt5" fournit un package de développement ou un SDK séparé, assurez-vous qu'il a été installé.

est clair :

Il faut installer un package de développement contenant les fichiers de configuration requis.

Tout ce qui précède s'applique uniquement à CONFIG mode de find_package , lorsque le script "Rechercher" n'est fourni ni par CMake ni par le projet CMake qui utilise cette commande.


Linux
  1. 8 conseils pour aider les non-techniciens à passer à Linux

  2. Trouver les capacités du pilote/dispositif Wifi ?

  3. Trouver le dernier élément d'une ligne à l'aide de Grep ?

  4. Trouver des packages pour Kali Linux

  5. logname Exemples de commandes sous Linux

13 façons d'aider Linux

Instructions spécifiques au système d'exploitation dans CMAKE :comment faire ?

Importation d'un projet CMake dans Eclipse CDT

LD_LIBRARY_PATH ne semble pas fonctionner

chmod ne fonctionne pas

Aidez-nous à interpréter OOM-Killer