Articles

cmake (1)¶

Options¶

-S <path-to-source>

Path to root directory of the CMake project to build.

-B <path-to-build>

localização da pasta que o CMake irá usar como raiz da pasta de compilação.

Se a pasta já não existir, o CMake irá fazê-lo.

-C <initial-cache>

pré-carregar um programa para preencher a ‘cache’.

Quando o CMake é executado pela primeira vez numa árvore de compilação vazia, cria um ficheiroCMakeCache.txt e popula-o com configurações personalizáveis para o projecto. Esta opção pode ser usada para indicar um ficheiro a partir do qual carregar os itens da ‘cache’ antes da primeira passagem pelos ficheiros da ‘scmake’ do projecto. Os itens carregados têm prioridade sobre os valores predefinidos do projecto. O ficheiro indicado deverá ser um script do CMake que contenha set() comandos que usem oCACHE opção, não o ficheiro acache-format.

References to CMAKE_SOURCE_DIR and CMAKE_BINARY_DIRwithin the script evaluate to the top-level source and build tree.

-D <var>:<type>=<value>, -D <var>=<value>

cria ou actualiza um CMakeCACHE entry.

Quando o CMake é executado pela primeira vez numa árvore de compilação vazia, cria um ficheiroCMakeCache.txt e popula-o com configurações personalizáveis para o projecto. Esta opção pode ser utilizada para especificar uma definição que atribui prioridade ao valor por omissão do projecto. A opção pode ser adaptada para quantas entradas CACHE se desejar.

Se :<type> parte é dada a ele deve ser um dos typesspecified por set() documentação do comando para o seuCACHE assinatura.Se a porção:<type> for omitida a entrada será created without type if it doesn’t exist with a type already. Se ordenar no projeto define o tipo de PATH ou FILEPATHentão <value> será convertido para um caminho absoluto.

Esta opção também pode ser dada como um único argumento:-D<var>:<type>=<value> ou -D<var>=<value>.

-U <globbing_expr>

Remover entradas correspondentes do CMake CACHE.

Esta opção pode ser usada para remover uma ou mais variáveis, a partir deCMakeCache.txt arquivo, o englobamento expressões usando * e ? aresupported. A opção pode ser repetida para tantas entradas CACHE conforme necessário.

Use com cuidado, você pode fazer o seu CMakeCache.txt não trabalhar.

-G <generator-name>

especifique um gerador de Sistema de compilação.

CMake pode suportar vários sistemas de construção nativos em determinadas configurações. Um gerador é responsável por gerar um sistema particular de construção. Os possíveis nomes dos geradores estão especificados no manualcmake-generators(7).

Se não for especificado, o CMake verifica o CMAKE_GENERATOR variável de ambiente e, de outro modo, recua para uma selecção predefinida do builtin.

-T <toolset-spec>

Toolset specification for the generator, if supported.

Alguns geradores CMake suportam uma especificação de conjunto de ferramentas para dizer ao sistema de compilação nativo como escolher um compilador. Ver a variávelCMAKE_GENERATOR_TOOLSET para mais pormenores.

-A <platform-name>

especificar o nome da plataforma se for suportado pelo gerador.

Alguns geradores CMake suportam um nome de plataforma a ser dado ao sistema de compilação para escolher um compilador ou SDK. Veja a variávelCMAKE_GENERATOR_PLATFORM para mais detalhes.

-Wno-dev

suprimir os avisos de desenvolvimento.

suprimir os avisos que se destinam ao autor dos ficheirosCMakeLists.txt. Por padrão, isto também irá desligar os avisos de actualização.

-Wdev

activar os avisos de desenvolvimento.

activar os avisos que se destinam ao autor dos ficheiros CMakeLists.txt. Por padrão, isso também irá ativar os avisos de depreciação.

-Werror=dev

Make developer warnings errors.

Faça avisos que se destinam ao autor doCMakeLists.txt fileserros. Por padrão, isso também irá ativar avisos desactualizados como erros.

-Wno-error=dev

Make developer alertas not errors.

Faça avisos que são feitos para o autor doCMakeLists.txt os ficheiros não erram. Por padrão, isto também irá desligar os avisos desactualizados como erros.

-Wdeprecated

activar avisos de funcionalidade desactualizados.

activar os avisos para a utilização da funcionalidade desactualizada, que são úteis para o autor doCMakeLists.txt ficheiros.

-Wno-deprecated

suprimir avisos de funcionalidade depreciados.

suprimir os avisos de Utilização da funcionalidade desactualizada, que são úteis para o autor doCMakeLists.txt ficheiros.

-Werror=deprecated

Make depreciated macro and function alertas errors.

Faça avisos para o uso de macros e funções obsoletas, que são importantes para o autor doCMakeLists.txt arquivos, erros.

-Wno-error=deprecated

Faça advertências depreciadas de macro e função Não erros.

Faça avisos para o uso de macros e funções obsoletas, que são importantes para o autor doCMakeLists.txt arquivos, não Erros.

-L

listar variáveis em ‘cache’ não avançadas.

Lista CACHE variáveis será executado o CMake e lista todas as variáveis da CMake CACHE que não são marcadas como INTERNAL ou ADVANCED.Isto irá efectivamente mostrar a configuração actual do CMake, que poderá então ser alterada com a opção -D. Mudar algumas das variáveis pode resultar na criação de mais variáveis. Se A é especificado, então ele vai mostrar também variáveis avançadas. Se H for especificado, ele também irá mostrar Ajuda para cada variável.

-N

modo de visualização apenas.

carregue apenas a ‘cache’. Não execute de facto o configure e o generatesteps.

--graphviz=

gerar graphviz de dependências, veja CMakeGraphVizOptions para mais.

gerar um ficheiro de entrada do graphviz que irá conter todas as dependências da biblioteca e executáveis do projecto. Veja a documentação paraCMakeGraphVizOptions para mais detalhes.

--system-information

Dump information about this system.

despeja uma vasta gama de informações sobre o sistema actual. Se executado a partir do topo de uma árvore binária para um projeto CMake, ele irá dumpadicional informação, como o cache, arquivos de log, etc.

--log-level=<ERROR|WARNING|NOTICE|STATUS|VERBOSE|DEBUG|TRACE>

define o nível logarítmico.

O comando message() só irá enviar mensagens do nível de blog específico ou superior. O nível padrão de log é STATUS.

para fazer com que um nível de log persista entre as corridas do CMake, definaCMAKE_MESSAGE_LOG_LEVEL como uma variável de cache.Se tanto a opção da linha de comandos como a variável forem indicadas, a opção da linha de comandos tem precedência.

Por razões de compatibilidade para trás, --loglevel também é aceite como asynonímia para esta opção.

--log-context

Enable the message() command outputing context attachmessage.

Esta opção activa a mostrar o contexto para a execução actual do CMake only.To make showing the context persistent for all subsequent CMake runs, setCMAKE_MESSAGE_CONTEXT_SHOW as a cache variable instead.Quando esta opção da linha de comandos é indicada, CMAKE_MESSAGE_CONTEXT_SHOWé ignorada.

--debug-trycompile

não delete o try_compile() árvore de compilação.Apenas útil em um try_compile() de cada vez.

não delete os arquivos e diretórios criados para try_compile()chamadas. Isto é útil na depuração dos ‘try_ compiles’ falhados. Pode, contudo, alterar os resultados dos compilados de tentativa como lixo antigo de uma anterior tentativa-compile pode causar um teste diferente para passar ou falhar incorretamente. Esta opção é melhor usada para uma tentativa-compile de cada vez, e apenas quando a depuração.

--debug-output

coloque o cmake num modo de depuração.

Print extra information during the cmake run like stack traces withmessage(SEND_ERROR) calls.

--debug-find

coloque os comandos cmake find num modo de depuração.

Print extra find call information during the cmake run to standarderror. A produção destina-se ao consumo humano e não à análise.Ver também a variávelCMAKE_FIND_DEBUG_MODE para depurar uma parte mais local do projecto.

--trace

colocar cmake em Modo de traço.imprime um traço de todas as chamadas feitas e de onde.

--trace-expand

colocar cmake em Modo de traço.

Como --trace, mas com variáveis expandidas.

--trace-format=<format>

coloque o cmake em Modo de traço e configure o formato de saída de traço.

<format> pode ser um dos seguintes valores.

human

imprime cada linha de traço num formato legível pelo homem. Este é o formato default.

json-v1

imprime cada linha como um documento JSON separado. Cada documento é separado por uma nova linha ( \n ). É garantido que os caracteres nonewline estarão presentes dentro de um documento JSON.

JSON de rastreamento formato:

{ "file": "/full/path/to/the/CMake/file.txt", "line": 0, "cmd": "add_executable", "args": , "time": 1579512535.9687231, "frame": 2}

Os membros são:

file

o caminho completo para O CMake arquivo de origem, onde o functionwas chamado.

line

A linha file da chamada de função.

defer

membro opcional que está presente quando a chamada de função foi deferida porcmake_language(DEFER). Se presente, o seu valor é astring contendo a chamada diferida <id>.

cmd

o nome da função que foi chamada.

args

a string list of all function parameters.

time

Timestamp (segundos desde a época) da chamada de função.

frame

Stack frame depth of the function that was called.

adicionalmente, o primeiro documento JSON apresentado contém a chave version para a versão principal e menor actual do formato

JSON trace format:

{ "version": { "major": 1, "minor": 1 }}

Os membros são:

version

Indica a versão do formato JSON. A versão tem componentes importantes e menores seguindo Convenções de versões semânticas.

--trace-source=<file>

colocar o cmake em Modo de traço, mas só enviar as linhas de um ficheiro especificado.

são permitidas várias opções.

--trace-redirect=<file>

colocar cmake em Modo de rastreamento e redirecionar a saída de rastreamento para um arquivo em vez de stderr.

--warn-uninitialized

avisar sobre valores não iniciados.

Print a warning when an uninitialized variable is used.

--warn-unused-vars

não faz nada. Nas versões do CMake 3. 2 e em baixo, esta opção activou os avisos acerca das variáveis não utilizadas. Nas versões do CMake 3.3 a 3.18, a opção foi broken.In o CMake 3. 19 e acima da opção foi removido.

--no-warn-unused-cli

não avisar sobre as opções da linha de comandos.

não encontre variáveis declaradas na linha de comandos, mas não utilizadas.

--check-system-vars

encontrar problemas com o uso de variáveis em arquivos do sistema.

normalmente, variáveis não utilizadas e não inicializadas são pesquisadas por onlyin CMAKE_SOURCE_DIReCMAKE_BINARY_DIR.Esta bandeira diz a CMake para avisar sobre outros arquivos também.

--profiling-output=<path>

Usado em conjunto com --profiling-format a saída para um determinado caminho.

--profiling-format=<file>

activar a saída de dados de análise do programa CMake no formato indicado.

isto pode ajudar a análise de desempenho dos scripts do CMake executados. Terceiro partyapplications deve ser usado para processar a saída em formato legível pelo ser humano.

os valores actualmente suportados são:google-trace Saídas no formato Google Trace, que pode ser analisado pela página de localização do Google Chrome ou usando um ‘plugin’ para uma ferramenta como o TraceCompass.

--preset <preset>--preset=<preset>

Lê uma preset de<path-to-source>/CMakePresets.json e<path-to-source>/CMakeUserPresets.json. A predefinição especifica o gerador e o directório de compilação, e opcionalmente uma lista de variáveis e outros argumentos a passar para o CMake. A pasta de trabalho actual deverá conter os ficheiros predefinidos do CMake. CMake GUI canalso reconhece CMakePresets.json e CMakeUserPresets.json arquivos. Para mais detalhes sobre estes arquivos, veja cmake-presets(7).

As predefinições são lidas antes de todas as outras opções da linha de comandos. O optionsspecificado pela predefinição (variáveis, Gerador, etc.) todos podem ser sobrepostos por meio de uma especificação na linha de comando. Por exemplo, se o preset setsa variável chamada MYVAR1, mas o usuário define como 2 com um-D argumento, o valor de 2 é o preferido.

--list-presets, --list-presets=<>

lista as predefinições disponíveis. Se não for indicada nenhuma opção, só será indicada a opção Configurar as predefinições. A pasta de trabalho actual deverá conter ficheiros predefinidos do CMake.