Preguntas etiquetadas con cmake

CMake es un generador de sistema de compilación de código abierto multiplataforma. Genera archivos para sistemas de compilación como makefiles nativos, ninja-build y archivos de proyecto para varios entornos de desarrollo integrados.


8
¿Cómo utilizar CCache con CMake?
Me gustaría hacer lo siguiente: Si CCache está presente en PATH, use "ccache g ++" para la compilación, de lo contrario use g ++. Intenté escribir un pequeño script my-cmake que contenía CC="ccache gcc" CXX="ccache g++" cmake $* pero no parece funcionar (ejecutar make todavía no usa ccache; verifiqué esto …
90 c++  unix  cmake  ccache 

10
CMake y CTest: hacer prueba no crea pruebas
Estoy probando CTest en CMake para ejecutar automáticamente algunas de mis pruebas usando make testtarget. El problema es que CMake no "entiende" que la prueba que estoy dispuesto a ejecutar tiene que ser construida ya que es parte del proyecto. Así que estoy buscando una forma de especificar explícitamente esta …

5
Función frente a macro en CMake
El documento oficial de CMake 2.8.12 dice sobremacro Cuando se invoca, los comandos registrados en la macro se modifican primero reemplazando los parámetros formales ($ {arg1}) con los argumentos pasados ​​y luego se invocan como comandos normales. y sobre function Cuando se invoca, los comandos registrados en la función se …
89 cmake 

10
CMake no puede determinar el lenguaje del enlazador con C ++
Estoy intentando ejecutar un programa cmake hello world en Windows 7 x64 con Visual Studio 2010 y Cygwin, pero parece que ninguno de los dos funciona. Mi estructura de directorio es la siguiente: HelloWorld -- CMakeLists.txt -- src/ -- -- CMakeLists.txt -- -- main.cpp -- build/ Hago una cd buildseguida …
89 c++  c  cmake 

4
Configure las opciones de CFLAGS y CXXFLAGS usando CMake
Solo quiero depurar un código que se ejecuta en Linux y necesito una compilación de depuración ( -O0 -ggdb). Así que agregué estas cosas a mi CMakeLists.txt: set(CMAKE_BUILD_TYPE DEBUG) set(CMAKE_C_FLAGS "-O0 -ggdb") set(CMAKE_C_FLAGS_DEBUG "-O0 -ggdb") set(CMAKE_C_FLAGS_RELEASE "-O0 -ggdb") set(CMAKE_CXX_FLAGS "-O0 -ggdb") set(CMAKE_CXX_FLAGS_DEBUG "-O0 -ggdb") set(CMAKE_CXX_FLAGS_RELEASE "-O0 -ggdb") Cuando traté de …
88 cmake  cflags 

12
Cmake no encuentra Boost
Estoy tratando de configurar un proyecto usando CMake, pero no puedo encontrar las bibliotecas de Boost a pesar de que están en la carpeta especificada. He especificado Boost_INCLUDE_DIR, Boost_LIBRARYDIRy BOOST_ROOT, pero sigo recibiendo un error que dice que CMake no puede encontrar Boost. ¿Cuál podría ser la razón de tal …
87 boost  cmake 




6
¿Cuál es la forma correcta de usar `pkg-config` desde` cmake`?
Mirando a mi alrededor en la red, he visto mucho código como este: include(FindPkgConfig) pkg_search_module(SDL2 REQUIRED sdl2) target_include_directories(app SYSTEM PUBLIC ${SDL2_INCLUDE_DIRS} target_link_libraries(app ${SDL2_LIBRARIES}) Sin embargo, esa parece ser la forma incorrecta de hacerlo, ya que solo usa los directorios y bibliotecas de inclusión, pero ignora las definiciones, las rutas de …
81 cmake  pkg-config 

3
CMake y búsqueda de otros proyectos y sus dependencias
Imagine el siguiente escenario: el Proyecto A es una biblioteca compartida que tiene varias dependencias (LibA, LibB y LibC). El proyecto B es un ejecutable que depende del proyecto A y, por lo tanto, también requiere todas las dependencias del proyecto A para poder construir. Además, ambos proyectos se construyen …
76 cmake 


1
CMake: ¿Cómo saber de dónde viene la dependencia transitiva?
Estoy en el proceso de reescribir una configuración CMake heredada para usar características modernas como la propagación automática de dependencias. (es decir, usando cosas como en target_include_directories(<target> PUBLIC <dir>)lugar de include_directories(<dir>)). Actualmente, manejamos manualmente toda la información de dependencia del proyecto estableciendo un conjunto de propiedades de directorio global. En …
10 cmake 
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.