Make - Linux Command - Unix parancs

make - A GNU hasznossá teszi a programok csoportjainak fenntartását

Szinopszis

make [ -f makefile ] [opció] ... cél ...

Figyelem

Ez az oldal a GNU make dokumentációjának kivonatát tartalmazza . Csak néha frissül, mert a GNU projekt nem használ Nrff-t. A teljes, aktuális dokumentációhoz tekintse meg a make.info fájlt, amely a make.texinfo Texinfo forrásfájlból készült .

Leírás

A make segédprogram célja annak meghatározása, hogy egy nagy program mely darabjait kell újrafordítani, és kiadni a parancsokat az újrafordításhoz. A kézikönyv a make GNU implementációját írja le, amelyet Richard Stallman és Roland McGrath írt. Példáink a C programokat mutatják, mivel ezek a leggyakoribbak, de a programozáshoz használhat olyan programozási nyelvet, amelynek fordítója shell parancssal futtatható. Valójában a make nem korlátozódik a programokra. Ezt használhatja olyan feladatok leírására, ahol egyes fájlokat automatikusan frissíteni kell másoktól, amikor a többiek megváltoznak.

A make használatának előkészítéséhez meg kell adnia a makefile nevű fájlt, amely leírja a programban lévő fájlok közötti kapcsolatokat, és megadja az egyes fájlok frissítésének parancsát. Egy programban általában a végrehajtható fájl frissül az objektumfájlokatól, amelyeket pedig forrásfájlok összeállításával készítenek.

Ha egy megfelelő makefile létezik, minden egyes forrásfájl megváltoztatásakor ez az egyszerű shell parancs:

csinál

elegendő az összes szükséges rekompiláció elvégzéséhez. A make program a makefile adatbázist és a fájlok utolsó módosítási idejét használja annak eldöntésére, hogy mely fájlokat kell frissíteni. Minden egyes fájlhoz kiadja az adatbázisban rögzített parancsokat.

a makefile-ben végrehajtott parancsok végrehajtása egy vagy több célnevet frissíteni, ahol a név jellemzően egy program. Ha nincs -f beállítás jelenik meg, a make meg fogja keresni a makefiles GNUmakefile , makefile és Makefile parancsokat ebben a sorrendben.

Általában a makefile-t vagy makefile-t vagy Makefile-t kell hívnia. (A Makefile-t javasoljuk, mert jól láthatóan a könyvtár-lista kezdete közelében jelenik meg, közvetlenül más fontos fájlok, például a README mellett .) A leggyakrabban használt makefile- ek esetében a javasolt GNUmakefile név nem ajánlott. Használnia kell ezt a nevet, ha van egy makefile, ami kifejezetten a GNU-hoz tartozik, és a make más verziói nem fogják megérteni. Ha a makefile `- ', a standard bemenet olvasható.

frissítsen egy célt, ha az az előfeltételes fájloktól függ, amelyeket módosítottak a cél utolsó módosítása óta, vagy ha a cél nem létezik.

LEHETŐSÉGEK

-b

-m

Ezeket az opciókat figyelmen kívül hagyja a más verziókkal való kompatibilitás érdekében .

-C dir

Váltson a dir könyvtárba, mielőtt elolvasta a makefile-t, vagy bármi mást csinált. Ha több C- opció van megadva, mindegyiket az előzőhöz képest értelmezzük: -C / -C stb egyenértékű a -C / etc-vel. Ezt tipikusan a make rekurzív meghívásaival használják.

-d

Nyomtasson hibakeresési információkat a normál feldolgozás mellett. A hibakeresési adatok azt mondják, hogy mely fájlokat veszik át a frissítéshez, milyen fájlokat hasonlítanak össze, és milyen eredményeket, mely fájlokat ténylegesen meg kell újítani, milyen implicit szabályokat kell figyelembe venni, és amelyeket alkalmaznak --- minden érdekes, hogy hogyan határozza meg mit kell tenni.

-e

Adjuk meg a környezeti prioritásból vett változókat a makefile-ből származó változók fölé.

-f fájl

Használja a fájlt makefile-ként.

-én

A fájlok átdolgozásához végrehajtott parancsok összes hibáját figyelmen kívül hagyja.

-I dir

Meghatározza a könyvtárkönyvtárat a mellékelt makefile-ek kereséséhez. Ha több -I opciót használ több könyvtár megadásához, a könyvtárakat a megadott sorrendben keresik. Ellentétben a többi zászlóval érkező argumentumokkal, az -I jelzőkhöz tartozó könyvtárak közvetlenül a zászló után érkezhetnek: -I dir megengedett, valamint -I dir. Ez a szintaxis megengedett a C előfeldolgozó -I jelzővel való kompatibilitáshoz.

-j munkák

Megadja a feladatok számának (parancsok) egyidejű futtatását. Ha egynél több opció van, akkor az utolsó érvényben van. Ha a -j paraméter argumentum nélkül érkezik, a make nem korlátozza az egyidejűleg futó feladatok számát.

-k

Folytassa a lehető legnagyobb mértékben hiba után. Bár a cél, amely nem sikerült, és azok, amelyek attól függenek, nem lehet újratanítani, a többi függőséget ezek a célok feldolgozhatóak.

-l

terhelés

Megadja, hogy ne legyenek új feladatok (parancsok), ha mások futnak, és a terhelés átlaga legalább betöltődik (lebegőpontos szám). Nincs argumentum, eltávolítja a korábbi terhelési korlátot.

-n

Nyomtassa ki a végrehajtandó parancsokat, de ne hajtsa végre azokat.

-o fájl

Ne ismételje meg a fájl fájlt még akkor sem, ha idősebb, mint a függőségei, és ne változtasson semmit a fájlváltozások miatt. Lényegében a fájlt nagyon réginek tekintik, és a szabályokat figyelmen kívül hagyják.

-p

Nyomtassa ki a makefile-ok olvasásából származó adatbázist (szabályokat és változóértékeket); majd hajtsa végre a szokásos módon, vagy másképpen határozza meg. Ezzel kinyomtathatja a -v kapcsolóval megadott verzióinformációkat (lásd alább). Az adatbázist fájlok újrahangolása nélkül kinyomtathatja a make -p -f / dev / null paranccsal.

-q

`` Kérdési mód ''. Ne fusson semmilyen parancsot, vagy nyomtasson semmit; csak olyan kilépési állapotot adjon vissza, amely nulla, ha a megadott célok már naprakészek, egyébként nem.

-r

Távolítsa el a beépített implicit szabályok használatát. Szintén törölje az utótag szabályok utótagjainak alapértelmezett listáját.

-s

Csendes működés; ne nyomtassa ki a parancsokat végrehajtásukkor.

-S

Törölje a -k opció hatását. Ez soha nem szükséges, kivéve a rekurzív módon, ahol -k a MAKEFLAGS-tól vagy a MAKEFLAGS-ból a környezetedben a legmagasabb szintû õrség örökölhetõ.

-t

Érintse meg a fájlokat (naprakészen jelölje őket anélkül, hogy ténylegesen megváltoztatná őket), a parancsok futtatása helyett. Ezt arra használják, hogy úgy tegyenek, mintha a parancsok készen lettek volna, hogy megverjék a jövő jövőbeli felszólításait.

-v

Nyomtassa ki a make program verzióját, egy szerzői jogot, a szerzők listáját és egy figyelmeztetést, hogy nincs garancia.

-w

Nyomtasson egy üzenetet, amely tartalmazza a munkakönyvtárat a más feldolgozás előtt és után. Ez hasznos lehet a rekurzív parancsok bonyolult fészkei által okozott hibák nyomon követésében.

-W fájl

Feltételezzük, hogy a célfájlt éppen módosítottuk. Ha a -n jelzővel használja, ez megmutatja, hogy mi fog történni, ha módosítani szeretné az adott fájlt. A -n nélkül, szinte ugyanaz, mint egy adott parancsfájl futtatása a parancsfájl futtatása előtt, kivéve, hogy a módosítási idő csak a készítés képében változik.