Articles

cmake (1)¶

opties¶

-S <path-to-source>

pad naar de hoofdmap van het te bouwen CMake-project.

-B <path-to-build>

pad naar de map die CMake zal gebruiken als de root van de build-map.

als de map nog niet bestaat, zal CMake het maken.

-C <initial-cache>

laad een script voor het vullen van de cache.

wanneer CMake voor het eerst wordt uitgevoerd in een lege build-boom, maakt het eenCMakeCache.txt bestand aan en vult het aan met aanpasbare instellingen voor het project. Deze optie kan worden gebruikt om een bestand op te geven waaruit cache-items moeten worden geladen voordat de scmake-lijstbestanden van het project voor het eerst worden doorlopen. De geladen items hebben voorrang op de standaardwaarden van het project. Het gegeven bestand moet een cmake-scriptbestand zijn met set() commando ‘ s die de CACHE optie gebruiken, niet een bestand in acache-formaat.

verwijzingen naar CMAKE_SOURCE_DIR en CMAKE_BINARY_DIRbinnen het script evalueren naar de top-level bron en bouw boom.

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

maak of update een cmake CACHE ingang.

wanneer CMake voor het eerst wordt uitgevoerd in een lege build-boom, maakt het eenCMakeCache.txt bestand aan en vult het aan met aanpasbare instellingen voor het project. Deze optie kan worden gebruikt om een instelling op te geven die voorrang heeft boven de standaardwaarde van het project. De optie kan worden gebruikt voor zoveel CACHE items als gewenst.

als het:<type> gedeelte is gegeven, moet het een van de typesspeciified zijn door deset() Commando documentatie voor zijnCACHE handtekening.Als het gedeelte :<type> wordt weggelaten, zal het item worden aangemaakt met geen type als het nog niet bestaat met een type. Als een opdracht in het project het type instelt op PATH of FILEPATHdan wordt de <value> geconverteerd naar een absoluut pad.

Deze optie kan ook als een enkel argument worden gegeven:-D<var>:<type>=<value> or -D<var>=<value>.

-U <globbing_expr>

verwijder overeenkomende items uit CMake CACHE.

Deze optie kan worden gebruikt om een of meer variabelen uit hetCMakeCache.txt bestand te verwijderen, globbing expressions using * and ? worden ondersteund. De optie kan worden herhaald voor zo veel CACHE items zoals aangegeven.

voorzichtig gebruiken, U kunt uw CMakeCache.txt niet laten werken.

-G <generator-name>

Specificeer een bouwsysteem generator.

CMake kan meerdere native build-systemen op bepaalde platforms ondersteunen. Een generator is verantwoordelijk voor het genereren van een bepaaldbouwsysteem. Mogelijke generatornamen worden gespecificeerd in decmake-generators(7) handleiding.

indien niet opgegeven, controleert CMake deCMAKE_GENERATOR omgevingsvariabel en valt anders terug op een ingebouwde standaardselectie.

-T <toolset-spec>

Toolset specificatie voor de generator, indien ondersteund.

sommige cmake-generatoren ondersteunen een toolset-specificatie om het native build-systeem te vertellen hoe een compiler te kiezen. Zie de variabeleCMAKE_GENERATOR_TOOLSET voor details.

-A <platform-name>

geef platformnaam op indien ondersteund door de generator.

sommige cmake-generatoren ondersteunen een platformnaam die aan het oorspronkelijke bouwsysteem moet worden gegeven om een compiler of SDK te kiezen. Zie de variabeleCMAKE_GENERATOR_PLATFORM voor details.

-Wno-dev

ontwikkelaarswaarschuwingen onderdrukken.

waarschuwingen onderdrukken die bedoeld zijn voor de auteur van deCMakeLists.txt bestanden. Standaard schakelt dit ook deprecatiewaarschuwingen uit.

-Wdev

ontwikkelaarswaarschuwingen inschakelen.

Activeer waarschuwingen die bedoeld zijn voor de auteur van de CMakeLists.txtbestanden. Standaard schakelt dit ook afkeuringswaarschuwingen in.

-Werror=dev

maak fouten in ontwikkelaarswaarschuwingen.

maak waarschuwingen die bedoeld zijn voor de auteur van de CMakeLists.txt bestandserrors. Standaard zal dit ook afgekeurde waarschuwingen als fouten inschakelen.

-Wno-error=dev

maak ontwikkelaarwaarschuwingen geen fouten.

maak waarschuwingen die bedoeld zijn voor de auteur van de CMakeLists.txt bestanden noterrors. Standaard zal dit ook afgekeurde waarschuwingen als fouten uitschakelen.

-Wdeprecated

verouderde functionaliteitswaarschuwingen inschakelen.

waarschuwingen inschakelen voor het gebruik van verouderde functionaliteit, die bedoeld zijn voor de auteur van de CMakeLists.txt bestanden.

-Wno-deprecated

verouderde functionaliteitswaarschuwingen onderdrukken.

waarschuwingen voor het gebruik van verouderde functionaliteit onderdrukken, die van belang zijn voor de auteur van deCMakeLists.txt bestanden.

-Werror=deprecated

maak verouderde macro-en functiewaarschuwingsfouten.

maak waarschuwingen voor het gebruik van verouderde macro ‘ s en functies, die belangrijk zijn voor de auteur van deCMakeLists.txt bestanden, fouten.

-Wno-error=deprecated

maak verouderde macro – en functiewaarschuwingen en geen fouten.

maak waarschuwingen voor het gebruik van verouderde macro ‘ s en functies, die bedoeld zijn voor de auteur van deCMakeLists.txt bestanden, geen fouten.

-L

toon niet-geavanceerde cachevariabelen.

ListCACHE variabelen draaien CMake en tonen alle variabelen uit de cmakeCACHE die niet gemarkeerd zijn alsINTERNAL ofADVANCED.Dit zal effectief de huidige cmake-instellingen weergeven, die vervolgens kunnen worden gewijzigd met -D optie. Het veranderen van enkele variabelen kan resulteren in meer variabelen worden gemaakt. Als A is opgegeven, dan zal het ook geavanceerde variabelen weergeven. Als H is opgegeven, zal het ook hulp weergeven voor elke variabele.

-N

alleen weergavemodus.

laad alleen de cache. Niet echt uitvoeren configure en generatesteps.

--graphviz=

genereer grafviz van afhankelijkheden, zie CMakeGraphVizOptions voor meer.

Genereer een graphviz invoerbestand dat alle bibliotheken en uitvoerbare afhankelijkheden in het project zal bevatten. Zie de documentatie voorCMakeGraphVizOptions voor meer details.

--system-information

informatie over dit systeem dumpen.

Dump een breed scala aan informatie over het huidige systeem. Als het wordt uitgevoerd vanaf de bovenkant van een binaire boom voor een cmake-project zal het extra informatie zoals de cache, logbestanden enz.

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

Stel het logniveau in.

het commando message() geeft alleen berichten van het opgegeven logniveau of hoger. Het standaard logniveau is STATUS.

om een logniveau te laten voortduren tussen cmake-runs, stelt u in plaats daarvanCMAKE_MESSAGE_LOG_LEVEL in als een cachevariabele.Als zowel de opdrachtregeloptie als de variabele worden gegeven, heeft de opdrachtregeloptie voorrang.

vanwege achterwaartse compatibiliteit wordt --loglevel ook als synoniem voor deze optie geaccepteerd.

--log-context

Activeer de message() opdracht uitvoeren context gekoppeld aan elk bericht.

Deze optie schakelt het tonen van de context voor de huidige cmake-run in only.To maak het tonen van de context persistent voor alle volgende cmake runs, stel in plaats daarvanCMAKE_MESSAGE_CONTEXT_SHOW in als een cache variabele.Als deze opdrachtregeloptie wordt gegeven, wordt CMAKE_MESSAGE_CONTEXT_SHOWgenegeerd.

--debug-trycompile

verwijder de try_compile() build tree niet.Alleen bruikbaar op één try_compile() tegelijk.

verwijder de bestanden en mappen die zijn aangemaakt voor try_compile()aanroepen niet. Dit is handig bij het debuggen van mislukte try_compiles. Het kan echter veranderen de resultaten van de try-compiles als oude rommel van een vorige try-compile kan leiden tot een andere test om ofwel passeren offail onjuist. Deze optie kan het beste worden gebruikt voor één keer compileren per keer, en alleen bij het debuggen.

--debug-output

zet cmake in een debugmodus.

druk extra informatie af tijdens het uitvoeren van cmake zoals stack traces metmessage(SEND_ERROR) aanroepen.

--debug-find

plaats cmake find-opdrachten in een debugmodus.

druk extra zoekoproepinformatie af tijdens het uitvoeren van cmake naar standarderror. Output is ontworpen voor menselijke consumptie en niet voor parsing.Zie ook de variabele CMAKE_FIND_DEBUG_MODE Voor het debuggen van een meer lokaal deel van het project.

--trace

zet cmake in trace mode.

Print een trace van alle oproepen en van waar.

--trace-expand

zet cmake in trace mode.

zoals --trace, maar met variabelen uitgebreid.

--trace-format=<format>

plaats cmake in trace-modus en stelt het trace-uitvoerformaat in.

<format> kan een van de volgende waarden zijn.

human

drukt elke regel af in een voor mensen leesbaar formaat. Dit is het standaardformaat.

json-v1

drukt elke regel af als een afzonderlijk JSON-document. Elk document wordt gescheiden door een nieuwe regel ( \n ). Het is gegarandeerd dat niet-nieuwe tekens aanwezig zijn in een JSON-document.

JSON trace formaat:

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

de leden zijn:

file

het volledige pad naar het cmake bronbestand waar de functie werd aangeroepen.

line

de regel in file van de functieaanroep.

defer

optioneel lid dat aanwezig is wanneer de functieaanroep werd uitgesteld doorcmake_language(DEFER). Indien aanwezig is de waarde astring die de uitgestelde aanroep <id>bevat.

cmd

de naam van de functie die werd aangeroepen.

args

een stringlijst van alle functieparameters.

time

tijdstempel (seconden sinds epoch) van de functieaanroep.

frame

stack framediepte van de aangeroepen functie.

bovendien bevat het eerste JSON-document dat wordt uitgevoerd deversion sleutel voor de huidige major en minor versie van het

JSON trace-formaat:

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

de leden zijn:

version

geeft de versie van het JSON-formaat aan. De versie heeft een grote en kleine componenten volgens semantische versieconventies.

--trace-source=<file>

zet cmake in trace mode, maar voer alleen regels van een opgegeven bestand uit.

meerdere opties zijn toegestaan.

--trace-redirect=<file>

plaats cmake in trace mode en redirect trace uitvoer naar een bestand in plaats van stderr.

--warn-uninitialized

waarschuwen voor niet-geïnitialiseerde waarden.

Geef een waarschuwing af wanneer een niet-geïnitialiseerde variabele wordt gebruikt.

--warn-unused-vars

doet niets. In cmake versies 3.2 en onder deze ingeschakeld waarschuwingen over niet-gebruikte variabelen. In cmake versies 3.3 tot en met 3.18 was de optie broken.In CMake 3.19 en hoger de optie is verwijderd.

--no-warn-unused-cli

waarschuw niet voor commandoregelopties.

vind geen variabelen die gedeclareerd zijn op de opdrachtregel, maar niet gebruikt worden.

--check-system-vars

zoek problemen met het gebruik van variabele in systeembestanden.

normaal gesproken worden ongebruikte en niet-geïnitialiseerde variabelen alleen gezocht in CMAKE_SOURCE_DIR en CMAKE_BINARY_DIR.Deze vlag vertelt CMake om ook te waarschuwen voor andere bestanden.

--profiling-output=<path>

gebruikt in combinatie met --profiling-format voor uitvoer naar een bepaald pad.

--profiling-format=<file>

Schakel de uitvoer van profileringsgegevens van cmake-script in het opgegeven formaat in.

Dit kan de prestatie-analyse van CMake-scripts ondersteunen die zijn uitgevoerd. Toepassingen van derde partijen moeten worden gebruikt om de uitvoer te verwerken in menselijk leesbaar formaat.

momenteel ondersteunde waarden zijn:google-trace uitgangen in Google Trace formaat, die kan worden ontleed door de About:tracing tab van Google Chrome of met behulp van een plugin voor een tool zoals TraceCompass.

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

leest a preset van<path-to-source>/CMakePresets.json en<path-to-source>/CMakeUserPresets.json. De voorinstelling specificeert de generatormap en de build directory, en optioneel een lijst met variabelen en andere argumenten om door te geven aan CMake. De huidige werkmap moet vooraf ingestelde bestanden bevatten. De CMake GUI kan ook CMakePresets.json en CMakeUserPresets.json bestanden herkennen. Voor volledige details over deze bestanden, zie cmake-presets(7).

de voorinstellingen worden gelezen voor alle andere commandoregelopties. De opties gespecificeerd door de voorinstelling (variabelen, generator, etc.) kunnen allemaal worden overschreven door ze op de commandoregel te specificeren. Bijvoorbeeld, als de voorinstelling setsa variabele genaamd MYVAR to 1, maar de gebruiker stelt het op 2 met een-D argument, de waarde 2 heeft de voorkeur.

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

geeft de beschikbare Voorkeuzen weer. Als er geen optie is opgegeven, worden alleen configure-voorinstellingen weergegeven. De huidige werkmap moet cmake-vooringestelde bestanden bevatten.