Articles of cmake

Como eu adiciono um vinculador ou sinalizador de compilation em um arquivo CMake?

Eu estou usando o compilador arm-linux-androideabi-g++ . Quando tento compilar um simples “Olá, mundo!” programa compila bem. Quando eu testá-lo, adicionando uma exception handling simples nesse código, ele funciona também (depois de adicionar -fexceptions .. Eu acho que está desativado por padrão). Isso é para um dispositivo Android, e eu só quero usar o CMake, […]

É Cmake definir variável recursiva?

Eu estou tentando modificar sinalizadores de compilador para todos os diretórios abaixo de um determinado diretório (ou seja, para todos os subdiretórios de diretórios atuais e todos os seus subdiretórios recursivamente). Então eu encontrei aqui há duas maneiras: add_directory(dir1) # … add_directory(dirN) add_compile_options(flag1 flag2 …) # or for CMake versions < 3.0 to do something […]

CMake + GoogleTest

Acabei de baixar o googletest, gerou o makefile com o CMake e o construí. Agora, preciso usá-lo no meu projeto de teste. Com o CMake, fui aconselhado a não apontar para bibliotecas gtest diretamente (usando include _directories ou link_directories ) mas use find_package() . O problema é que não existe um destino de instalação para […]

Usando o CMake com o GNU Make: Como posso ver os comandos exatos?

Eu uso o CMake com o GNU Make e gostaria de ver todos os comandos exatamente (por exemplo, como o compilador é executado, todos os flags, etc.). O GNU make tem –debug , mas não parece ser tão útil, existem outras opções? O CMake fornece sinalizadores adicionais no Makefile gerado para fins de debugging?

CMAKE_BUILD_TYPE não está sendo usado no CMakeLists.txt

Estou tendo problemas para definir minha configuração de compilation padrão como Release, no arquivo CMakeLists.txt eu configurei CMAKE_BUILD_TYPE na parte superior do arquivo com #enable Release ALWAYS, configure vars set(CMAKE_BUILD_TYPE Release) set(EXECUTABLE_NAME “ParticleSimulator”) set(VERSION_MAJOR 0) set(VERSION_MINOR 2) mas ao criar meu projeto e abrir a solução, sempre me deparo com o modo de debugging, ao […]

CMake: Em qual Ordem os Arquivos são analisados ​​(Cache, Toolchain,…)?

Isto parece uma questão trivial, uma vez que o CMake é uma linguagem de script, a resposta geral é: estritamente sequencial. Mas me deparei com vários casos em que era importante quando ou em qual ordem o CMake estava analisando certos arquivos. Então eu me pergunto: Existe uma documentação disponível que descreva a ordem na […]

O CMake encontra o Boost, mas os destinos importados não estão disponíveis para a versão Boost

Eu uso o CMake para encontrar o Boost. Boost é encontrado, mas o CMake comete erros Alvos importados não disponíveis para a versão Boost Veja o erro completo (do macOS) abaixo. O que estou fazendo de errado? CMake Warning at /Applications/CMake.app/Contents/share/cmake-3.6/Modules/FindBoost.cmake:743 (message): Imported targets not available for Boost version 106300 Call Stack (most recent call […]

Sugestão Localizar arquivos .cmake com um diretório personalizado

No CMake, existe uma maneira de fazer scripts de localização incorporados para priorizar um diretório personalizado que especificamos? Devido ao fato de que, especialmente nas janelas, os scripts de localização de módulos geralmente não conseguem detectar o módulo, por exemplo, diretórios de estúdios visuais. Portanto, eu geralmente tenho que configurar manualmente os caminhos para as […]

CMake não encontra inclui / bibliotecas

Eu quero usar alguns headers de terceiros (ou uma biblioteca) em um projeto que usa o CMake. Mas não encontra os headers (a biblioteca). Por que o CMake não o encontra?

Como adicionar o sinalizador de compilador “-l” (ell) no CMake

Trabalhar no Ubuntu 16 Eu usei o comando g++ main.cpp -lpq para g++ main.cpp -lpq meu pequeno projeto. Agora eu uso o Clion e quero fazer o mesmo com o g++ . Mas eu não posso adicionar sinalizadores de compilador no arquivo cmake e obter erro de compilation. cmake_minimum_required(VERSION 3.5.1) project(day_g) set(CMAKE_CXX_FLAGS “-lpq”) add_definitions(-lpq) message(“CMAKE_CXX_FLAGS […]