Korjaus: Kohteita ei ole määritetty eikä tiedostoa löytynyt.



Kokeile Instrumenttia Ongelmien Poistamiseksi

Riippumatta siitä, työskenteletkö Ubuntun, Debianin tai Red Hatin kanssa, saatat nähdä virheen, joka lukee make: *** Kohteita ei määritetty eikä makefileä löydy. Lopettaa. Koska tämä on yleinen asia, joka liittyy GNU Makeen kokonaisuutena, saatat nähdä sen lukemattomissa Unix-toteutuksissa. Se tarkoittaa, että nykyisessä työhakemistossasi ei ole tiedostoa nimeltä makefile tai Makefile. Onneksi se on helppo korjata.



Tapa 1: Makefile-tiedoston löytäminen nykyisestä hakemistosta

Voit halutessasi kokeilla tehdä komento vielä kerran nykyisessä hakemistossa nähdäksesi, heittyykö sama virhe sinulle. Tämä on erityisen tärkeää, jos olet avannut uuden pääteikkunan ja jo yrittänyt löytää oikean hakemiston tai jos olet käyttänyt cd-komentoa edellisen kerran, kun yritit ajaa GNU make -ohjelmaa.



Jos oletetaan, että se on, yritä suorittaa Ls tai sinulle komento nähdäksesi, mitkä tiedostot ovat nykyisessä hakemistossa. Et ehkä ole hakemistopuun oikeassa reunassa. Jos huomaat, että näet juurihakemistoon tai kotihakemistoon kuuluvia hakemistoja, sinun on suoritettava cd-komento sijoittamaan itsesi oikeaan paikkaan suorittamaan make-komento.



Saatat löytää itsesi vielä kauemmas sinne, missä olet. Esimerkissämme yritimme suorittaa merkin / var / crash-hakemistosta ja huomasimme, että se ei toiminut ollenkaan. Sen ei voida odottaa suorittavan täältä, koska ainoat tiedostot tässä paikassa ovat etuyhteydettömistä kaatumisraporteista.

Olet todennäköisesti halunnut suorittaa make-komennon hakemistosta, joka sijaitsee jonnekin kotihakemistosi sisällä. Jos esimerkiksi rakennat uusinta versiota GNU nanosta lähteestä, sinulla todennäköisesti on hakemisto osoitteessa ~ / nano-2.9.6, johon voit cd: n ja sitten suorittaa make uudelleen. Voit kokeilla juoksemista Ls ennen kuin yrität varmistaa, että hakemistossa on makefile, josta voit rakentaa.

Muista, että asennus on ensin määritettävä. Konfiguroi-komento luo täydellisen ympäristön GNU-kääntäjälle. Jos et löydä tiedostoa edes oikeasta projektihakemistosta, suorita sitten ./konfiguroi kun olet vielä sen sisällä, seuraa tehdä komento. Jos tämä kääntyy oikein, voit asentaa projektisi sudo tee asennus , mutta muista, että et halua rakentaa mitään juuriksi, joten et koskaan halua ajaa sudo make- tai muuta asennuksen ulkopuolella.

Tapa 2: Mukautetun tiedostotiedoston määrittäminen

Jos olet korjannut ongelman, sinun ei tarvitse tehdä mitään muuta. On kuitenkin kaksi erityistä käyttötapausta, jotka on otettava huomioon, jos edellinen menetelmä ei korjannut ongelmaa. Molemmat käsittävät oman makefile-tiedoston kirjoittamisen projektille, jonka olet määrittänyt käsin.

Voit määrittää mukautetun tiedostotiedoston, jota kutsutaan muuksi kuin kirjaimellisesti makefileeksi, käyttämällä -f-vaihtoehtoa. Esimerkiksi, jos sinulla oli varmuuskopiotiedosto nimeltä makefile.bak, voit määrittää sen suorittamalla make -f makefile.bak komentoriviltä. Voit korvata makefile.bak-tiedoston millä tahansa tiedostonimellä ja sisällyttää -i -vaihtoehdon, jos haluat ohittaa virheet muokatussa tai vanhentuneessa makefile-tiedostossa kääntäjän ollessa käynnissä. Tätä ei yleensä suositella, koska todennäköisesti haluat muokata tiedostoa, jos siinä on jotain vikaa.

Toinen hyvin läheisesti liittyvä käyttötapaus sisältää tilanteen, jossa asia on herkkyys kirjainkoon suhteen. Seuraavat ovat kaikki erillisiä tiedostoja Unix-liiketoimintatavalla:

  • Makefile
  • Makefile
  • makeFile
  • MakeFile
  • MakefilE

Mukautetut ohjelmat eivät välttämättä pysty tunnistamaan tiedostoa, jossa isot kirjaimet ovat parittomia. Jos olet kirjoittanut sen käsin työskentelemääsi koodausprojektia varten, sinun kannattaa todennäköisesti nimetä se uudelleen makefileeksi, vaikka voit käyttää -i-vaihtoehtoa varmistaaksesi, että GNU make pystyy löytämään sen. Muista, että jos olet kirjoittanut kaiken oikein, voit silti suorittaa ./configure omasta projektistasi pakottaaksesi sen luomaan oikean ympäristön ja välttämään tämän ongelman.

3 minuuttia luettu