Articles

cmake (1) cmake

alternativ cmake

-S <path-to-source>

sökväg till rotkatalogen för cmake-projektet att bygga.

-B <path-to-build>

sökväg till katalog som CMake kommer att använda som roten till build directory.

Om katalogen inte redan finns cmake kommer att göra det.

-C <initial-cache>

förinstallera ett skript för att fylla i cacheminnet.

När CMake först körs i ett tomt byggträd skapar det enCMakeCache.txt – fil och fyller den med anpassningsbara inställningar förprojektet. Det här alternativet kan användas för att ange en fil från vilkenatt ladda cacheposter innan det första passet genom projektets filer. De laddade posterna prioriteras framför projektets standardvärden. Den angivna filen ska vara ett cmake scriptcontainingset() kommandon som använderCACHE alternativet, inte acache-format fil.

referenser till CMAKE_SOURCE_DIR och CMAKE_BINARY_DIRinom skriptet utvärdera till toppnivå källa och bygga träd.

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

skapa eller uppdatera en cmake CACHE post.

När CMake först körs i ett tomt byggträd skapar det enCMakeCache.txt – fil och fyller den med anpassningsbara inställningar förprojektet. Det här alternativet kan användas för att ange en inställning som prioriterar projektets standardvärde. Alternativet kan upprepas för så mångaCACHE poster som önskas.

om:<type> – delen ges måste den vara en av typernaspecificerad avset() kommandodokumentation för dessCACHE signatur.Om:<type> – delen utelämnas skapas posten utan typ om den inte finns med en typ redan. Om acommand i projektet anger typen till PATHeller FILEPATHkommer <value> att konverteras till en absolut sökväg.

detta alternativ kan också ges som ett enda argument:-D<var>:<type>=<value>eller -D<var>=<value>.

-U <globbing_expr>

Ta bort matchande poster från CMake CACHE.

det här alternativet kan användas för att ta bort en eller flera variabler frånCMakeCache.txt – filen, globbing uttryck med * och ? aresupported. Alternativet kan upprepas för så mångaCACHE poster asdesired.

använd försiktigt, du kan göra ditt CMakeCache.txt icke-fungerande.

-G <generator-name>

Ange en byggsystemgenerator.

CMake kan stödja flera inbyggda byggsystem på vissa plattformar. En generator är ansvarig för att generera en vissbyggsystem. Möjliga generatornamn anges i manualencmake-generators(7).

om det inte anges kontrollerar CMakeCMAKE_GENERATOR miljövariabel och faller annars tillbaka till ett inbyggt standardval.

-T <toolset-spec>

verktygsuppsättningsspecifikation för generatorn, om den stöds.

vissa cmake generatorer stöder en verktygssats specifikation för att tellthe native build system hur man väljer en kompilator. Se variabelnCMAKE_GENERATOR_TOOLSET för detaljer.

-A <platform-name>

Ange plattformsnamn om det stöds av generator.

vissa cmake-generatorer stöder ett plattformsnamn som ska ges till thenative build system för att välja en kompilator eller SDK. Se variabelnCMAKE_GENERATOR_PLATFORM för detaljer.

-Wno-dev

undertryck utvecklarvarningar.

undertryck varningar som är avsedda för författaren avCMakeLists.txt filer. Som standard stängs detta också avavskrivningsvarningar.

-Wdev

Aktivera utvecklarvarningar.

aktivera varningar som är avsedda för författaren till CMakeLists.txtfiler. Som standard kommer detta också att aktivera avskrivningsvarningar.

-Werror=dev

gör utvecklarvarningsfel.

gör varningar som är avsedda för författaren tillCMakeLists.txt filfel. Som standard kommer detta också att aktivera föråldrade varningar som fel.

-Wno-error=dev

gör utvecklarvarningar inte fel.

gör varningar som är avsedda för författaren tillCMakeLists.txt filer noterfel. Som standard kommer detta också att stänga av föråldrade varningar som fel.

-Wdeprecated

Aktivera föråldrade funktionsvarningar.

aktivera varningar för användning av föråldrad funktionalitet, som menasför författaren till CMakeLists.txt filer.

-Wno-deprecated

undertrycka föråldrade funktionsvarningar.

undertryck varningar för användning av föråldrad funktionalitet, som menasför författaren tillCMakeLists.txt filer.

-Werror=deprecated

gör föråldrade makro-och funktionsvarningsfel.

gör varningar för användning av föråldrade makron och funktioner, som menasför författaren till CMakeLists.txt filer, fel.

-Wno-error=deprecated

gör föråldrade makro-och funktionsvarningar inte fel.

gör varningar för användning av föråldrade makron och funktioner, som menasför författaren tillCMakeLists.txt filer, inte fel.

-L

lista icke-avancerade cachade variabler.

listaCACHE variabler kommer att köra CMake och lista alla variabler fromthe CMake CACHE som inte är markerade som INTERNAL eller ADVANCED.Detta visar effektivt aktuella cmake-inställningar, som sedan kan ändras med -D alternativ. Att ändra några av variablerna kan resultera i att fler variabler skapas. Om A anges, kommer det attvisa även avancerade variabler. Om H anges kommer det också att visa hjälp för varje variabel.

-N

endast visningsläge.

ladda bara cacheminnet. Kör inte faktiskt konfigurera och genererasteg.

--graphviz=

generera grafviz av beroenden, seCMakeGraphVizOptions för mer information.

generera en graphviz-inmatningsfil som innehåller alla bibliotek ochutförbara beroenden i projektet. Se dokumentationen förCMakeGraphVizOptions för mer information.

--system-information

dumpa information om detta system.

dumpa ett brett utbud av information om det aktuella systemet. Om det körs från toppen av ett binärt träd för ett cmake-projekt kommer det att dumpa ytterligare information som cache, loggfiler etc.

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

Ställ in loggnivån.

kommandotmessage() kommer endast att mata ut meddelanden på den angivna loggnivån eller högre. Standard loggnivå är STATUS.

för att göra en loggnivå kvar mellan cmake-körningar, Ställ inCMAKE_MESSAGE_LOG_LEVEL som en cachevariabel istället.Om både kommandoradsalternativet och variabeln ges, har kommandoradsalternativet företräde.

av bakåtkompatibilitetsskäl accepteras även --loglevel som asynonym för detta alternativ.

--log-context

aktivera kommandotmessage() utmatning av sammanhang kopplat till varjemeddelande.

det här alternativet aktiverar visning av kontext för den aktuella cmake-körningen only.To gör att visa sammanhanget beständigt för alla efterföljande cmake-körningar, Ställ inCMAKE_MESSAGE_CONTEXT_SHOW som en cachevariabel istället.När detta kommandoradsalternativ ges ignorerasCMAKE_MESSAGE_CONTEXT_SHOW.

--debug-trycompile

Ta inte bort try_compile() bygga träd.Endast användbart på en try_compile() åt gången.

Ta inte bort filer och kataloger som skapats förtry_compile()samtal. Detta är användbart vid felsökning misslyckades try_compiles. Det kan dock ändra resultaten av try-sammanställningar som gamla skräp från ativious try-compile kan orsaka ett annat test för att antingen passera orfail felaktigt. Det här alternativet används bäst för ett försök-kompilera åt gången, och endast vid felsökning.

--debug-output

sätt cmake i ett felsökningsläge.

Skriv ut extra information under cmake-körningen som stackspår medmessage(SEND_ERROR) samtal.

--debug-find

sätt cmake find-kommandon i ett felsökningsläge.

Skriv ut extra hitta samtalsinformation under cmake-körningen till standarderror. Produktionen är avsedd som livsmedel och inte för tolkning.Se även variabeln CMAKE_FIND_DEBUG_MODE för debuggingen mer lokal del av projektet.

--trace

sätt cmake i spårningsläge.

Skriv ut ett spår av alla samtal som gjorts och varifrån.

--trace-expand

sätt cmake i spårningsläge.

som --trace, men med variabler expanderade.

--trace-format=<format>

sätt cmake i spårningsläge och ställer in spårutmatningsformatet.

<format> kan vara ett av följande värden.

human

skriver ut varje spårlinje i ett läsbart format. Detta är thedefault format.

json-v1

skriver ut varje rad som ett separat JSON-dokument. Varje dokument ärseparerat med en ny rad ( \n ). Det är garanterat att nonewline-tecken kommer att finnas i ett JSON-dokument.

JSON trace format:

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

medlemmarna är:

file

hela sökvägen till cmake-källfilen där funktionenkallades.

line

raden ifile för funktionsanropet.

defer

valfri medlem som är närvarande när funktionssamtalet skjutits uppav cmake_language(DEFER). Om det finns, är dess värde astring som innehåller det uppskjutna samtalet <id>.

cmd

namnet på funktionen som kallades.

args

en stränglista över alla funktionsparametrar.

time

tidsstämpel (sekunder sedan epok) för funktionsanropet.

frame

Stack ramdjup för funktionen som kallades.

Dessutom innehåller det första utmatade JSON-dokumentetversion – tangenten för den aktuella större och mindre versionen av

JSON-spårningsformatet:

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

medlemmarna är:

version

anger versionen av JSON-formatet. Versionen har amajor och mindre komponenter efter semantiska versionskonventioner.

--trace-source=<file>

sätt cmake i spårläge, men mata bara ut rader av en viss fil.

flera alternativ är tillåtna.

--trace-redirect=<file>

sätt cmake i spårningsläge och omdirigera spårutmatning till en fil istället för stderr.

--warn-uninitialized

varna om oinitierade värden.

Skriv ut en varning när en oinitierad variabel används.

--warn-unused-vars

Gör ingenting. I cmake versioner 3.2 och under detta aktiverade varningar omoanvända variabler. I cmake-versionerna 3.3 till 3.18 var alternativet broken.In cmake 3.19 och över alternativet har tagits bort.

--no-warn-unused-cli

varna inte om kommandoradsalternativ.

hitta inte variabler som deklareras på kommandoraden, men inteanvänds.

--check-system-vars

hitta problem med variabel användning i systemfiler.

normalt söks oanvända och oinitierade variabler efter onlyin CMAKE_SOURCE_DIRoch CMAKE_BINARY_DIR.Denna flagga berättar CMake att varna om andra filer också.

--profiling-output=<path>

används tillsammans med --profiling-format för att mata ut till en given sökväg.

--profiling-format=<file>

aktivera produktionen av profileringsdata för cmake-skript i det angivna formatet.

detta kan hjälpa prestationsanalys av cmake-skript som körs. Tredje partapplikationer bör användas för att bearbeta utmatningen till mänskligt läsbart format.

värden som för närvarande stöds är:google-trace utgångar i Google Trace-Format, som kan analyseras av fliken om:spårning i Google Chrome eller med hjälp av ett plugin för ett verktyg som TraceCompass.

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

läser enpresetfrån<path-to-source>/CMakePresets.jsonoch<path-to-source>/CMakeUserPresets.json. Förinställningen specificerar generatorn och byggkatalogen, och eventuellt en lista med variabler och andra argument som ska skickas till CMake. Den aktuella arbetskatalogen måste innehållagör förinställda filer. CMake GUI kan också känna igenCMakePresets.json ochCMakeUserPresets.json filer. För fullständig information om dessa filer, se cmake-presets(7).

förinställningarna läses före alla andra kommandoradsalternativ. Alternativenspecificerad av förinställningen (variabler, generator etc.) kan alla åsidosättas avmanuellt ange dem på kommandoraden. Till exempel, om den förinställda uppsättningenen variabel som heter MYVAR till 1, men användaren ställer in den till 2 med ett-D argument, värdet 2 föredras.

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

listar tillgängliga förinställningar. Om inget alternativ anges bara konfigurera förinställningarkommer att listas. Den aktuella arbetskatalogen måste innehålla förinställda cmake-filer.