Labojums: Nav norādīti mērķi un nav atrasts neviens makefails.



Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai

Neatkarīgi no tā, vai strādājat ar Ubuntu, Debian vai Red Hat, iespējams, redzēsit kļūdu: *** Nav norādīti mērķi un nav atrasts neviens makefails. Apstājies. Tā kā šī ir vispārēja problēma, kas saistīta ar GNU Make kopumā, jūs, iespējams, redzēsit to neskaitāmās Unix versijās. Tas nozīmē, ka pašreizējā darba direktorijā nav faila ar nosaukumu makefile vai Makefile. Par laimi, to ir viegli novērst.



1. metode: Makefile atrašana pašreizējā direktorijā

Varat mēģināt palaist veidot komandu vēl vienu reizi pašreizējā direktorijā, lai redzētu, vai jums tiek izmesta tā pati kļūda. Tas ir īpaši svarīgi, ja esat atvēris jaunu termināļa logu un jau mēģinājāt atrast pareizo direktoriju vai arī izmantojāt komandu cd kopš pēdējās reizes, kad mēģinājāt palaist GNU make.



Pieņemot, ka tā ir, mēģiniet palaist ls vai tev komandu, lai redzētu, kādi faili atrodas jūsu pašreizējā direktorijā. Iespējams, neatrodaties direktorijas koka labajā pusē. Ja pamanāt, ka redzat direktorijus, kas pieder jūsu saknes / direktorijā vai mājas ~ direktorijā, jūs vēlaties palaist komandu cd, lai novietotu sevi pareizajā vietā, lai palaistu komandu make.

Pastāv iespēja, ka jūs varētu atrasties vēl tālāk no tās vietas, kur jūs sagaidāt. Šajā piemērā mēs mēģinājām palaist make no direktorija / var / crash un konstatējām, ka tas vispār nedarbojas. Nevar gaidīt, ka tas darbosies no šejienes, jo vienīgie faili šajā konkrētajā vietā ir no nesaistītiem avāriju pārskatiem.

Vairāk nekā iespējams, jūs vēlaties palaist savu komandu make no direktorija, kas atrodas kaut kur jūsu mājas direktorija iekšpusē. Piemēram, ja jūs veidojat jaunāko GNU nano versiju no avota, iespējams, ka jums ir direktorija, kas atrodas vietnē ~ / nano-2.9.6, kurā jūs varētu cd un pēc tam atkal palaist make. Iespējams, vēlēsities izmēģināt skriešanu ls vēlreiz, pirms mēģināt pārliecināties, ka direktorijā atrodas makefile, no kuras jūs varat veidot.

Paturiet prātā, ka vispirms ir jākonfigurē instalācija. Komanda configure rada perfektu vidi GNU kompilatora uzplaukumam. Ja makefailu neatrodat pat pareizajā projekta direktorijā, palaidiet ./konfigurēt kamēr jūs joprojām atrodaties tajā, seko veidot komandu. Ja tas kompilējas pareizi, jūs varat instalēt savu projektu ar sudo veikt instalēšanu , bet atcerieties, ka nevēlaties neko veidot kā root, tāpēc nekad nevēlaties palaist sudo make vai kaut ko citu ārpus instalēšanas.

2. metode: Pielāgota faila norādīšana

Pieņemot, ka problēma ir novērsta, nekas vairāk nav jādara. Tomēr ir divi īpaši lietošanas gadījumi, kas jāapsver, ja iepriekšējā metode neizlaboja jūsu problēmu. Abos gadījumos ir jāveido savs makefails projektam, kuru konfigurējat ar roku.

Izmantojot opciju -f, varat norādīt pielāgotu makefailu, ko sauc par kaut ko citu, nevis burtiski makefile. Piemēram, ja jums bija rezerves makefile ar nosaukumu makefile.bak, tad, iespējams, to norādīsit, palaižot make -f makefile.bak no komandrindas. Jūs varat aizstāt makefile.bak ar jebkuru faila nosaukumu vispār, un jūs varat iekļaut opciju -i, ja kompilatora darbības laikā vēlaties ignorēt kļūdas pielāgotā vai novecojušā makefile failā. Parasti tas nav ieteicams, jo, iespējams, vēlēsities rediģēt savu makefailu, ja ar to ir kaut kas nepareizs.

Otrs ļoti cieši saistīts lietošanas gadījums ietver situāciju, kad jautājums ir par reģistrjutīgumu. Šie ir visi atsevišķi faili uzņēmējdarbības Unix veidā:

  • Makefile
  • makefile
  • makeFile
  • MakeFile
  • MakefilE

Pielāgotas konfigurētas programmas, iespējams, nespēs atpazīt makefailu ar nepāra lielajiem burtiem. Ja esat to uzrakstījis ar roku kodēšanas projektam, pie kura strādājat, iespējams, vēlēsities to pārdēvēt par makefile, lai gan jūs varētu izmantot opciju -i, lai nodrošinātu, ka GNU make spēj to atrast. Atcerieties, ka, ja viss ir uzrakstīts pareizi, tad joprojām varat palaist ./configure no sava projekta, lai sāktu piespiest to radīt pareizo vidi un izvairīties no šīs problēmas.

3 minūtes lasīts