GNU/Linux >> Znalost Linux >  >> Linux

CMAKE_PREFIX_PATH nepomáhá CMake při hledání Qt5

Nainstaloval jsem následující chybějící balíčky:

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

Připojování jakéhokoli druhu předpony nyní není vyžadováno:

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)

Nový výstup:

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

Chyby jsou nyní pryč.

Díky:
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


Pro macOS exportujte do terminálu následující proměnnou.

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

Může existovat jiná verze, zkontrolujte, kterou máte, a podle toho změňte poslední komponentu cesty.

Vydejte rekonfiguraci sestavení

cmake ../

CVytvořte chybovou zprávu o selhání find_package a nastavení CMAKE_PREFIX_PATH proměnná

Přidejte předponu instalace "Qt5" do CMAKE_PREFIX_PATH

je nějak zavádějící. Hovoří pouze o "instalační předponě", ale tato instalace stále vyžaduje obsahovat Qt5Config.cmake nebo qt5-config.cmake soubory uvnitř, aby byly zjistitelné pomocí find_package .

Ale zpráva

Pokud "Qt5" poskytuje samostatný vývojový balíček nebo SDK, ujistěte se, že byl nainstalován.

je jasné:

Je potřeba nainstalovat vývojový balíček, který obsahuje požadované konfigurační soubory.

Vše výše uvedené platí pouze pro CONFIG režim find_package , když skript "Najít" neposkytuje ani CMake, ani projekt CMake, který tento příkaz používá.


Linux
  1. Hledání poslední položky v řadě pomocí Grepu?

  2. logname Příklady příkazů v Linuxu

  3. křížový kompilátor ldd

  1. Jak vytvořit soubor, pouze pokud neexistuje?

  2. Hledání obsahu jednoho souboru v jiném souboru

  3. Java SecureRandom neblokuje? Jak?

  1. Nalezení možností ovladače/zařízení Wifi?

  2. Hledání balíčků pro Kali Linux

  3. hledání jedinečných hodnot v datovém souboru