Articles

cmake (1)¶

Options¶

-S <path-to-source>

polku luotavan CMake-projektin juurihakemistoon.

-B <path-to-build>

polku hakemistoon, jota CMake käyttää rakennushakemiston juurena.

Jos Hakemistoa ei ole jo olemassa, CMake tekee sen.

-C <initial-cache>

Esikuormata skripti välimuistin kansoittamiseksi.

kun CMake ajetaan ensimmäisen kerran tyhjässä rakennuspuussa, se LuoCMakeCache.txt tiedoston ja kansoittaa sen muokattavilla asetuksilla projektille. Tätä asetusta voidaan käyttää määritettäessä tiedostoa, josta voidaan ladata välimuistimerkintöjä ennen kuin ensimmäinen läpäisee projektin tiedostoluettelot. Ladatut merkinnät ovat etusijalla projektin oletusarvoihin nähden. Annetun tiedoston tulee olla CMake-skripti, joka sisältää set() komennot, jotka käyttävät CACHE – valitsinta, ei acache-muotoista tiedostoa.

viittaukset CMAKE_SOURCE_DIR ja CMAKE_BINARY_DIRskriptin sisällä arvioidaan ylätason lähteeseen ja rakennuspuuhun.

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

luo tai päivitä CMake CACHE entry.

kun CMake ajetaan ensimmäisen kerran tyhjässä rakennuspuussa, se LuoCMakeCache.txt tiedoston ja kansoittaa sen muokattavilla asetuksilla projektille. Tätä asetusta voidaan käyttää määritettäessä asetusta, joka on etusijalla projektin oletusarvoon nähden. Valinta voidaan valita niin monelle CACHE tietueelle kuin halutaan.

Jos

:<type>

osa on annettu, sen on oltava yksi set() komentodokumentaatio senCACHE allekirjoitus.Jos :<type> osa jätetään pois, merkintä luodaan ilman tyyppiä, jos sitä ei ole olemassa tyypin kanssa jo. Jos projektissa acommand asettaa tyypin PATH tai FILEPATH<value> muutetaan absoluuttiseksi poluksi.

Tämä vaihtoehto voidaan antaa myös yhtenä argumenttina:-D<var>:<type>=<value> tai -D<var>=<value>.

-U <globbing_expr>

Poista vastaavat merkinnät cmake CACHE.

tällä valinnalla voidaan poistaa yksi tai useampi muuttujaCMakeCache.txt tiedostosta, globbing-lausekkeita käyttäen * ja ? aresupported. Valinta voidaan toistaa niin monelle CACHE merkinnälle kuin merkitty.

Käytä varoen, voit tehdä CMakeCache.txt toimimattomaksi.

-G <generator-name>

Määritä rakentamisjärjestelmägeneraattori.

CMake voi tukea useita native build-järjestelmiä tietyillä platformeilla. Generaattori on vastuussa tuottaa tietynrakenteinen järjestelmä. Mahdolliset generaattorien nimet on määriteltycmake-generators(7) käsikirjassa.

Jos ei ole määritelty, CMake tarkistaa CMAKE_GENERATOR environmentvariable ja putoaa muuten takaisin builtin oletusvalintaan.

-T <toolset-spec>

toolset specification for the generator, if supported.

jotkut CMake-generaattorit tukevat työkalusarjaa, joka kertoo alkuperäisen rakennusjärjestelmän, miten kääntäjä valitaan. CMAKE_GENERATOR_TOOLSET muuttuja lisätietoja.

-A <platform-name>

Määritä Alustan nimi, jos generaattori tukee sitä.

jotkut CMake-generaattorit tukevat alustanimeä, joka annetaan thenative build-järjestelmälle kääntäjän tai SDK: n valitsemiseksi. Katso tarkemmat tiedotCMAKE_GENERATOR_PLATFORM muuttuja.

-Wno-dev

torju kehittäjävaroitukset.

Poista varoitukset, jotka on tarkoitettuCMakeLists.txt tiedostojen kirjoittajalle. Oletusarvoisesti tämä myös sammuttaa varoituksen.

-Wdev

ota kehittäjävaroitukset käyttöön.

Ota käyttöön varoitukset, jotka on tarkoitettu CMakeLists.txttiedostojen kirjoittajalle. Oletusarvoisesti tämä kytkee päälle myös deprection-varoitukset.

-Werror=dev

tee kehittäjien varoitusvirheitä.

tee varoitukset, jotka on tarkoitettu CMakeLists.txt tiedostovirheet. Oletusarvoisesti tämä kytkee päälle myös vanhentuneet varoitukset virheinä.

-Wno-error=dev

tee kehittäjien varoituksista virheitä.

tee varoitukset, jotka on tarkoitettu CMakeLists.txt tiedostojen kirjoittajalle. Oletuksena tämä myös sammuttaa vanhentuneet varoitukset virheinä.

-Wdeprecated

Ota käyttöön vanhentuneet toimintavaroitukset.

Ota käyttöön varoitukset vanhentuneiden toimintojen käytöstä, jotka ovat tarpeellisia CMakeLists.txt – tiedostojen tekijälle.

-Wno-deprecated

Poista vanhentuneet toimintavaroitukset.

Poista varoitukset vanhentuneiden toimintojen käytöstä, jotka ovat tarpeellisia CMakeLists.txt tiedostojen tekijälle.

-Werror=deprecated

tekevät vanhentuneita makro-ja funktiovaroitusvirheitä.

tee varoituksia vanhentuneiden makrojen ja funktioiden käytöstä, jotka ovat tarpeellisia CMakeLists.txt tiedostojen, virheiden kirjoittajalle.

-Wno-error=deprecated

tee vanhentuneista makro-ja funktiovaroituksista virheitä.

tee varoituksia vanhentuneiden makrojen ja funktioiden käytöstä, jotka ovat CMakeLists.txt tiedostojen tekijälle tarpeellisia, eivät virheitä.

-L

listaa ei-edistyneet välimuistissa olevat muuttujat.

List CACHE muuttujat ajetaan CMake ja luetellaan kaikki muuttujat CMake CACHE, joita ei ole merkitty INTERNAL tai ADVANCED.Tämä näyttää tehokkaasti nykyiset CMake-asetukset, jotka voidaan sitten vaihtaa -D – valitsimella. Joidenkin muuttujien muuttaminen voi johtaa useampien muuttujien luomiseen. Jos A on määritelty, niin se poistaa myös edistyneet muuttujat. Jos H on määritelty, se antaa myös apua jokaiselle muuttujalle.

-N

Näytä vain tila.

lataa vain välimuisti. Älä suorita configure-ja generatesteps-ohjelmia.

--graphviz=

luo riippuvuuksien graafit, katso CMakeGraphVizOptions lisää.

luo graphviz-syötetiedosto, joka sisältää kaikki projektin kirjasto-ja selitettävät riippuvuudet. Katso lisätietoja dokumentaatiostaCMakeGraphVizOptions.

--system-information

Dumppitiedot tästä järjestelmästä.

Dump a wide range of information about the current system. Jos cmake-projekti ajetaan binääripuun yläosasta, se dumppaalisätietoja, kuten välimuistin, lokitiedostot jne.

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

Aseta lokitaso.

message() komento tulostaa vain määritetyn lokitason tai sitä korkeamman sanoman. Oletuslokitaso on STATUS.

jotta lokitaso säilyisi CMake-ajojen välillä, asetaCMAKE_MESSAGE_LOG_LEVEL välimuistimuuttujaksi sen sijaan.Jos sekä komentorivivalitsin että muuttuja on annettu, komentorivivalinta on etusijalla.

taaksepäin yhteensopivuussyistä --loglevel hyväksytään myös tämän vaihtoehdon asynyymiksi.

--log-context

Ota käyttöön message() komennon ulostuloyhteys, joka on liitetty kuhunkin viestiin.

Tämä asetus kytkee päälle nykyisen CMake-ajon kontekstin only.To make näyttää kontekstin pysyvänä kaikille myöhemmille CMake-ajoille, asetaCMAKE_MESSAGE_CONTEXT_SHOW välimuistimuuttujaksi sen sijaan.Kun tämä komentorivivalitsin annetaan, CMAKE_MESSAGE_CONTEXT_SHOWohitetaan.

--debug-trycompile

älä poista try_compile() rakennuspuuta.Käyttökelpoinen vain yhdellä try_compile() kerrallaan.

älä poista try_compile() – kutsuille luotuja tiedostoja ja kansioita. Tästä on hyötyä epäonnistuneiden try_compiles-tiedostojen vianetsinnässä. Se voi kuitenkin muuttaa try-compilesin tuloksia, koska vanha roska aiemmasta try-compilesta voi aiheuttaa erilaisen testin joko läpäistäväksi tai virheelliseksi. Tätä asetusta käytetään parhaiten yhden try-compile attime-kokeilun yhteydessä ja vain virheenkorjauksen yhteydessä.

--debug-output

laita cmake debug-tilaan.

tulosta cmake-ajon aikana lisätietoja kuin pinojälkiämessage(SEND_ERROR) – kutsuilla.

--debug-find

laita cmake find-komennot debug-tilaan.

tulosta extra etsi puhelutiedot cmake-ajon aikana standarderroriin. Tuotos on tarkoitettu ihmisravinnoksi eikä jäsennettäväksi.Katso myösCMAKE_FIND_DEBUG_MODE muuttuja debuggingan paikallisemmasta osasta projektia.

--trace

laita cmake seurantatilaan.

tulosta jälki kaikista soitetuista puheluista ja mistä.

--trace-expand

laita cmake seurantatilaan.

kuten --trace, mutta muuttujia laajennetaan.

--trace-format=<format>

laittaa cmaken jäljitystilaan ja asettaa jäljitysmuodon.

<format> voi olla jokin seuraavista arvoista

human

tulostaa jokaisen jälkirivin ihmisluettavassa muodossa. Tämä on thedefault-formaatti.

json-v1

tulostaa jokaisen rivin erillisenä JSON-dokumenttina. Jokainen dokumentti esitetään uudella rivillä (\n ). On taattu, että nonewline-merkit ovat läsnä JSON-dokumentissa.

JSON trace format:

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

jäsenet ovat:

file

koko polku CMake-lähdekooditiedostoon, jossa funktiota kutsuttiin.

line

funktiokutsun rivi file.

defer

valinnainen jäsen, joka on läsnä, kun funktiokutsua lykättiin cmake_language(DEFER). Jos on, sen arvo on astring, joka sisältää laskennallisen kutsun <id>.

cmd

kutsutun funktion nimi.

args

merkkijonoluettelo kaikista funktioparametreista.

time

funktiokutsun aikaleima (sekunteja epochista).

frame

pinon kehyssyvyys funktiosta, jota kutsuttiin.

lisäksi ensimmäinen julkaistu JSON-dokumentti sisältääversion avain

JSON trace-formaatin nykyiseen duuri-ja molliversioon:

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

jäsenet ovat: version

ilmaisee JSON-formaatin version. Versiossa on semanttisen version konventioita seuraavat isot ja pienet komponentit.

--trace-source=<file>

laita cmake seurantatilaan, mutta tulosta vain tietyn tiedoston rivit.

useampi vaihtoehto on sallittu.

--trace-redirect=<file>

laita cmake jäljitystilaan ja ohjaa jäljitystulos tiedostoon stderr: n sijaan.

--warn-uninitialized

varoittavat aloittamattomista arvoista.

tulosta varoitus, kun käytetään kutsumatonta muuttujaa.

--warn-unused-vars

ei tee mitään. CMake-versioissa 3.2 ja sen alapuolella mahdollistettiin varoitukset käytetyistä muuttujista. CMake-versioissa 3.3-3.18 vaihtoehto oli broken.In CMake 3.19 ja sitä korkeampi vaihtoehto on poistettu.

--no-warn-unused-cli

älä varoita komentorivivalinnoista.

älä löydä muuttujia, jotka on julistettu komentorivillä, mutta joita ei ole käytetty.

--check-system-vars

Etsi järjestelmätiedostoista ongelmia muuttujan käytössä.

normaalisti käyttämättömät ja aloittamattomat muuttujat haetaan vain CMAKE_SOURCE_DIR ja CMAKE_BINARY_DIR.Tämä lippu käskee Cmakea varoittamaan myös muista tiedostoista.

--profiling-output=<path>

käytetään yhdessä --profiling-format tuotoksen kanssa tietylle polulle.

--profiling-format=<file>

mahdollistavat CMake-skriptin profilointitietojen tuottamisen annetussa muodossa.

Tämä voi auttaa suoritettujen CMake-skriptien suorituskyvyn analysoinnissa. Kolmannen osapuolen hakemuksia olisi käytettävä tuotoksen käsittelemiseen ihmisen luettavassa muodossa.

tällä hetkellä tuetut arvot ovat:google-trace lähdöt Google Trace-muodossa, joka voidaan jäsentää Google Chromen jäljitys-välilehdellä tai käyttämällä tracecompassin kaltaisen työkalun liitännäistä.

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

lukee preset from<path-to-source>/CMakePresets.json ja<path-to-source>/CMakeUserPresets.json. Esiasetus määrittää generaattorin ja rakentamishakemiston sekä valinnaisesti luettelon muuttujista ja muista Cmakelle siirrettävistä argumenteista. Nykyisen työhakemiston on sisälläcmake preset-tiedostot. CMake GUI voi myös tunnistaa CMakePresets.json ja CMakeUserPresets.json tiedostot. Lisätietoja näistä tiedostoista on cmake-presets(7).

esiasetukset luetaan ennen kaikkia muita komentoriviasetuksia. Asetettujen vaihtoehtojen määritys (muuttujat, generaattori jne.) voidaan kaikki ohittaa määrittämällä ne automaattisesti komentorivillä. Esimerkiksi jos ennalta asetettu setsa-muuttuja nimeltään MYVAR to 1, mutta käyttäjä asettaa sen 2 kanssa-D argumentti, arvo 2 on edullinen.

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

listaa käytettävissä olevat esiasetukset. Jos valitsinta ei ole annettu, vain määritä esiasetukset listataan. Nykyisen työhakemiston on sisällettävä CMake-esiasetetut tiedostot.