Зрабіць - Linux Command - Unix каманднага

зрабіць - GNU зрабіць ўтыліту для падтрымання групы праграм

канспект

зрабіць [-f Makefile] [опцыя] ... мэту ...

папярэджанне

Гэтая старонка з'яўляецца экстракт дакументацыі GNU Make. Яна абнаўляецца толькі зрэдку, таму што праект GNU не выкарыстоўвае Nroff. Для поўнай бягучай дакументацыі, звярніцеся да Info файл make.info , які вырабляецца з зыходнага файла make.texinfo Texinfo.

апісанне

Мэта ўтыліты зрабіць гэта , каб аўтаматычна вызначыць , якія часткі вялікай праграмы трэба перакампіляваць і выдаваць каманды для іх перакампіляванні. У кіраўніцтве апісана рэалізацыя GNU замыкальных, які быў напісаны Рычард Столлман і Roland McGrath. Нашы прыклады паказваюць праграмы C , так як яны з'яўляюцца найбольш распаўсюджанымі, але вы можаце выкарыстоўваць зрабіць з любым мовай праграмавання якога кампілятар можа працаваць з камандай абалонкі. На самай справе, зрабіць не абмяжоўваецца праграмамі. Вы можаце выкарыстоўваць яго для апісання любой задачы, дзе некаторыя файлы павінны быць абноўлены аўтаматычна ад іншых, калі астатнія мяняюць.

Для падрыхтоўкі выкарыстоўваць макіяж, вы павінны напісаць файл з імем Makefile , які апісвае адносіны паміж файламі ў вашай праграме, а стану каманды для абнаўлення кожнага файла. У праграме, як правіла, выкананы файл абнаўляецца з аб'ектных файлаў, якія, у сваю чаргу зрабіў шляхам кампіляцыі зыходных файлаў.

Пасля таго, як падыходны Makefile існуе, кожны раз пры змене некаторых зыходных файлаў, гэтую простую каманду абалонкі:

зрабіць

дастаткова, каб выканаць усе неабходныя перакампіляванні. Праграма зробіць выкарыстоўвае базу дадзеных Makefile і час апошняй змены файлаў , каб вызначыць , якія файлы павінны быць абноўлены. Для кожнага з гэтых файлаў, ён выдае каманды, запісаныя ў базе дадзеных.

зрабіць выконвае каманды ў Makefile для абнаўлення аднаго або некалькіх мэтавых імёнаў, дзе імя з'яўляецца звычайна праграма. Калі няма опцыі -f няма, зрабіць будзе шукаць Makefiles GNUmakefile, Makefile і Makefile, у такім парадку.

Як правіла , вы павінны выклікаць ваш Makefile альбо Makefile або Makefile. (Мы рэкамендуем Makefile , так як яна прыкметна бліжэй да пачатку спісу каталогаў, прама побач іншых важных файлаў , такіх як README.) Першае імя праверана, GNUmakefile, не рэкамендуецца для большасці Makefiles. Вы павінны выкарыстоўваць гэтае імя , калі ў вас ёсць Makefile , які спецыфічны для GNU зрабіць, і не будуць зразуметыя іншымі версіямі вытворчасці. Калі Makefile з'яўляецца `-», то чытаецца стандартны ўвод.

ўносіць абнаўлення мэта , калі гэта залежыць ад папярэдніх файлаў , якія былі зменены з моманту мэтавай апошняй змены, або калі аб'ект не існуе.

варыянты

-b

-m

Гэтыя опцыі ігнаруюцца для сумяшчальнасці з іншымі версіямі вытворчасці.

рэж

Перайдзіце ў каталог рэж перад чытаннем мейкфайлы ці рабіць што - небудзь яшчэ. Калі паказана некалькі -C варыянтаў, кожны інтэрпрэтуецца адносна папярэдняй: -C / -C г.д. эквівалентна -C / і г.д .. Гэта , як правіла , выкарыстоўваецца з рэкурсіўных выклікамі вытворчасці.

-d

Адладкавую інфармацыю ў дадатак да звычайнай апрацоўцы. Адладкавыя інфармацыя кажа , якія файлы разглядаюцца для пераробкі, што файл разы параўноўваюцца і з якімі вынікамі, якія файлы на самай справе павінны быць пераробленыя, якія няяўныя правілы разглядаюцца і якія прымяняюцца --- усё самае цікавае пра тое , як робяць вырашае што рабіць.

-e

Дайце зменных ўзятыя з асяроддзя старшынства над зменнымі з Makefiles.

-f файл

Выкарыстоўвайце файл як Makefile.

-i

Ігнараваць усе памылкі ў камандах, што выконваюцца для рымейк файлаў.

-I каталог

Задае каталог дырэкторыю для пошуку уключанай Makefiles. Калі некалькі -I опцыі выкарыстоўваюцца для ўказанні некалькіх каталогаў, каталогі праглядаюцца ў паказаным парадку. У адрозненні ад аргументаў іншых сцягоў замыкальных, каталогі , дадзеныя з -I сцягоў могуць прыйсці адразу пасля сцяга: -I каталог дазволена, а таксама -I рэж. Гэты сінтаксіс дазволены для сумяшчальнасці з -I сцягам C препроцессора.

-j працы

Паказвае колькасць заданняў (каманд) для запуску адначасова. Калі ёсць больш чым адна -j опцыя, апошні з якіх з'яўляецца эфектыўным. Калі -j опцыя зададзена без аргументу, зрабіць не будзе абмяжоўваць колькасць працоўных месцаў , якія могуць працаваць адначасова.

-k

Працягвайце як мага больш пасля памылкі. У той час як мэта, якая не ўдалася, і тыя, якія залежаць ад яе, не могуць быць пераробленыя, іншыя залежнасці гэтых мэтаў могуць быць апрацаваны ўсё роўна.

-l

-l нагрузка

Паказвае , што ніякіх новых працоўных месцаў (каманды) павінны быць запушчаныя , калі ёсць іншыя працоўныя месцы працы і сярэдняя загрузка па меншай меры , нагрузка (з якая плавае коскі). Пры адсутнасці аргументу, выдаляе папярэдні мяжа нагрузкі.

-n

Вывесці каманды, якія будуць выконвацца, але не выконваць іх.

-o файл

Ня рымейк файл файл , нават калі ён старэйшы за сваіх залежнасцяў, і зрабіць што - небудзь на кошт змяненняў у файл не перарабіць. Па сутнасці, файл трактуецца як вельмі старая, і яе правілы ігнаруюцца.

-p

Друк базы дадзеных (правілы і значэння зменных), якая з'яўляецца вынікам чытання мейкфайлы; затым выканаць як звычайна або як паказана інакш. Гэта таксама друкуе інфармацыю пра версію даецца ключ -v (глядзі ніжэй). Каб раздрукаваць базу дадзеных , не спрабуючы перарабіць якія - небудзь файлы, выкарыстанне зрабіць -p -f / DEV / нуль.

-q

`` Пытанне рэжыме ''. Не запускаць любыя каманды, ці надрукаваць што-небудзь; проста вяртае статус завяршэння, які роўны нулю, калi ўказаныя мэты ўжо да цяперашняга часу, у адваротным выпадку выдатная ад нуля.

-r

Выключыце выкарыстанне ўбудаваных няяўных правілаў. Таксама ачысціць спіс па змаўчанні суфіксаў для правілаў суфіксаў.

-s

Бясшумная праца; ня друкаваць каманды, як яны выконваюцца.

-S

Адмяніць дзеянне опцыі -k. Гэта ніколі не трэба , за выключэннем рэкурсыўнай маркі , дзе -k можа быць успадкаванай ад верхняга ўзроўню робіць праз MAKEFLAGS або калі вы ўсталюеце -k ў MAKEFLAGS ў вашай асяроддзі.

-t

Націсніце файлы (адзначце іх у актуальным стане на самай справе не іх змены) замест запуску іх каманды. Гэта выкарыстоўваецца , каб рабіць выгляд , што каманды былі зробленыя для таго, каб падмануць будучыя выклікі вытворчасці.

-v

Вывесці версію праграмы робяць плюс аўтарскія правы, спіс аўтараў і апавяшчэнне , што няма ніякай гарантыі.

-w

Друк паведамленне, якое змяшчае працоўны каталог перад і пасля іншых відаў апрацоўкі. Гэта можа быць карысна для кантролю памылак са складаных гнёздаў рэкурсіўных каманд замыкальных.

-W файл

Прыкінуцца , што мэтавай файл толькі што быў зменены. Пры выкарыстанні з сцягам -n, гэта паказвае, што здарылася б , калі б вы змяніць гэты файл. Без -n, гэта амаль тое ж самае , як працуе сэнсарны каманду на гэты файл перад запускам зрабіць, за выключэннем таго, што час змянення змяняецца толькі ва ўяўленні макіяжу.