GNU/Linux >> Tutoriales Linux >  >> Linux

CMAKE_PREFIX_PATH no ayuda a CMake a encontrar Qt5

Instalé los siguientes paquetes faltantes:

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

Ahora no es necesario adjuntar ningún tipo de prefijo:

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)

Nueva salida:

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

Los errores se han ido ahora.

Gracias a:
https://answers.ros.org/question/236324/could-not-find-a-package-configuration-file-provided-by-qt5widgets/
https://askubuntu.com/questions/508503/cuál es-el-paquete-de-desarrollo-para-qt5-en-14-04


Para macOS, exporte la siguiente variable en la terminal.

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

Puede haber otra versión, verifique cuál tiene y cambie el último componente de ruta en consecuencia.

Emita la reconfiguración de compilación

cmake ../

CMake mensaje de error sobre find_package fallido y configurando CMAKE_PREFIX_PATH variables

Agregue el prefijo de instalación de "Qt5" a CMAKE_PREFIX_PATH

es de alguna manera engañoso. Solo habla de "prefijo de instalación", pero esta instalación aún requiere para contener Qt5Config.cmake o qt5-config.cmake archivos dentro para ser descubiertos por find_package .

Pero el mensaje

Si "Qt5" proporciona un paquete de desarrollo o SDK por separado, asegúrese de que se haya instalado.

es claro:

Es necesario instalar un paquete de desarrollo que contenga los archivos de configuración necesarios.

Todo lo anterior se aplica solo a CONFIG modo de find_package , cuando ni CMake ni el proyecto de CMake que utiliza este comando proporcionan la secuencia de comandos "Buscar".


Linux
  1. ¿Encontrar capacidades del controlador/dispositivo Wifi?

  2. ¿Encontrar el último elemento en una línea usando Grep?

  3. Encontrar paquetes para Kali Linux

  4. Instrucciones específicas del sistema operativo en CMAKE:¿Cómo?

  5. Importación de un proyecto CMake en Eclipse CDT

8 consejos para ayudar a los no expertos en tecnología a migrar a Linux

13 maneras en que puede ayudar a Linux

Encontrar el contenido de un archivo en otro archivo

Cmake en Windows no agrega rutas de biblioteca compartidas (funciona en Linux)

chmod no funciona

Por favor, ayuda a interpretar OOM-Killer