Sárga levél - cikkek - megoldás a problémák a végrehajtás csapatok
Előfordul, hogy a szokásos sorrend nem működik összeállításához a programot. Úgy kezdődik, hogy megjelenítse a különböző hibák és állítja össze a programot. Mit kell tenni? Ez a cikk leírja, hogyan lehet megszabadulni a sok gyakori hibákat.
Megjegyzés: Ez a cikk feltételezi, hogy már van egy bizonyos mennyiségű tudást a munka területén a parancssorban, és tudja, hogyan kell dolgozni a disztró csomagkezelőjével.
Hibák a ./configure parancs
Hibákat a make parancs
Hibák a make install parancsokat
Hibák a ./configure parancs
Az alábbi lista tartalmaz néhány, a leggyakoribb hiba, hogy tud adni Kamanda ./configure. Hibák megrendelt előfordulásának gyakorisága. Először is, a leggyakoribb. A dolgok között (és) nem kötelező, lehet, hogy nem jelenik meg megjegyzések. VAGY, vastag dőlt betűkkel azt jelenti, hogy néhány hibát is egy megoldás. A szöveg között <и> Ez azt mutatja, a vonal típusát, amelyet meg kell jelennie ezen a helyen.
(Beállítás :) (hiba :)
Ez általában azt jelenti, hogy a -dev vagy -devel verziója a csomag, amely az úgynevezett
(Konfigurálása :) (error :) nem találja header (fájl)
A configure script nem találja a .h szükséges fájl összeállítása. Ez a hiba hasonló az előzőhöz, amelyben meg kell telepíteni, vagy -devel -dev verziója a csomag. Általában azonban nem világos, hogy milyen csomagot telepíteni kívánt megoldani ezt a problémát, hiszen a
(Konfigurálása :) (error :) nem elfogadható CC találhatók
Ön használja telepíteni a gcc fordító, mint a CC környezeti változó hiányzik, vagy nincs telepítve. Ügyeljen arra, hogy a gcc csomag telepítése a csomagkezelő segítségével a forgalmazás. Ha ez a csomag nincs telepítve, telepítse. Ha telepítve van, próbálja ki a következő parancsot:
Ha ez működik, akkor adja hozzá a parancsot a / etc / profile (a fájl, amely parancsokat végrehajtani, amikor a felhasználó bejelentkezik), és akkor nem kell beírni újra.
(Konfigurálása :) (error :) C ++ előfeldolgozó "/ lib / cpp" nem alapvető ellenőrzést
A csomag g ++ hiányzik vagy sérült. Használja használja a disztribúció csomagkezelő (vagy bármely más módja, hogy megtalálják, és a telepítésnél), hogy megtalálja a csomag g ++ és telepíteni. Ne felejtsük el, hogy néhány disztribúció, ez a csomag nem hívják g ++. Fedora, például a nevet használja gcc-c ++ -ban soem adattár yum. Ha nem találja g ++, próbálja keresni c ++, cpp vagy gcc.
(Konfigurálása :) (error :) C ++ előfeldolgozó "CC (-E)" nem alapvető ellenőrzést
Ezt a hibát az okozza, hogy egy furcsa „bug” egyes verziói libtool könyvtár, ami a configure script, hogy ellenőrizze az összes fordítóprogramok támogatást libtool. A legegyszerűbb megoldás - telepíteni g ++.
Hibákat a make parancs
Mivel a hibákat a teljesítményt a csapat általában, hogy nagyon sajátos, adok egy listát az alapvető dolog, hogy segíthet:Ha egy programot fordítasz gcc 4 (használat gcc -dumpversion, hogy ezt kiderítsük), próbáld meg a régebbi változata a fordító. Először győződjön meg róla, hogy egy régebbi verzió. Ez általában megtalálható használja a következő parancsot:
Ha visszatér, valahogy így:
Használhatja gcc32 paranccsal fordíthatjuk le a programot a korábbi verziókban gcc. Ha a parancs nem tér vissza, mint egy string, használja a disztribúció csomagkezelő megtalálni és telepíteni a korábbi verziók a gcc (általában compat-gcc vagy GCC
] $ CC = "/ usr / bin / gcc32" ./configure
[Rechosen @ localhost
] $ CC = "/ usr / bin / gcc32" make
[Rechosen @ localhost
] $ CC = "/ usr / bin / gcc32" make install
Természetesen a / usr / bin / gcc32 kell cserélni, amelyben Ön alternatív változata gcc.
Néha hibák oka egyszerű „bug” program. Próbálja meg letölteni a legfrissebb verziót (ez a cvs, svn, vagy más tároló, vagy töltse le a legújabb snapshot), és lefordítani, akkor talán ez a hiba már javítva.
Hiba make komadny is okozhatja, ha helytelen verziója szükséges könyvtár vagy program. Ez a probléma gyakran nagyon új, vagy nagyon régi csomagokat. Ellenőrizze a csomag függőségeket (ők obchno írt a honlapján a program), és összehasonlítani a verziószámát a verzió van telepítve a számítógépen (láthatod őket obchno segítségével disztribúció csomagkezelő). Ha a verziószám a rendszer több, mint ami meg van írva a honlapon, talán próbál összeállítani egy nagyon régi csomagot. Ha deysvitelno kell fordítani, próbálja meg telepíteni a régebbi változatai a függő paketov.Kak mást nebylo általában jobb keresni egy másik módja annak, hogy telepíteni ezt a csomagot, vagy keresni egy másik. Ha a verziószám a rendszerben kisebb, mint a honlapon, akkor próbálja meg frissíteni a megfelelő paket.Vy mozhetepoprobovat frissíti a szükséges könyvtár, vagy fordítsd idősebb vesiyu programmy.Tak ugyanazon ellenőrzés lehet már ezt a csomagot összeállítani avshego forgalmazás. A telepítés általában könnyebb, mint kijavítása fordításkor hibákat.
A másik dolog, hogy megpróbálja - a keresést az adott hibát az interneten. Ha nem talál valami hasznos, próbálja meg eltávolítani a dolgokat, mint sorszám (ez módosíthatja az új változat), a verziószámot (ez helyettesíthető egy csillaggal, ha az benne van a program neve) és a különleges karaktereket, például idézőjeleket, mivel befolyásolja a keresési szolgáltatást. Ön általában találni egy csomó információt levelezési listán. Néha úgy jön ki egy javítást, amely kijavítja a hibákat a forráskódot. Meg lehet alkalmazni sludeyuschim módon:
] $ Patch -Np1
Ne felejtsük el felragasztani a tapaszt, a jelenlegi kell lennie a forrás könyvtárat.
Hibák a make install parancsokat
Ezek a hibák általában könnyű megérteni, de még mindig írok róluk. Két leggyakoribb eset, hogy miért a make install parancs hibát jelez:
Nem kell root jogosultságokkal. Próbálja futtatni make install parancsot a sudo parancsot, vagy váltson át a root a su paranccsal. A sudo parancs használata a következő:
] $ Sudo make install
Arra kéri a jelszót; általában csak a saját jelszavával vagy a root jelszót. Akkor isplzovat su paranccsal, polpovatelem root:
Ez a parancs is kér egy jelszót, de ebben az esetben ez naobhodim root jelszót. Ha lesz a root, csak futtasd a make install.
A csomag, amit csak össze az a setup parancs. Ebben az esetben meg kell másolni a lefordított bináris fájlt a bin könyvtárban kézzel. Ha fut az ls parancs a forrás könyvtárban, a futtatható legyen világoszöld. Meg kell másolni a / usr / bin (vagy ha úgy tetszik, a / usr / local / bin) a következő parancsot:
] $ Cp
Egyetértek azzal, hogy ez nem mindig a legegyszerűbb módja, de néha a fejlesztők nem töltik az időt, hogy megteremtse a setup parancs. Nem szabad haragudni rájuk erre: először is, mert hogy hasznos program számunkra.
Íme néhány további lehetséges problémákat és azok megoldásait:
Minden jól megy, de mikor írja a program nevét, hogy az éppen beállított, bash azt mondja, nem találja meg. Ez általában akkor fordul elő annak a ténynek köszönhető, hogy a make install készlet minden a / usr / local vagy a / opt /
Ki kell cserélni a / usr / local / bin abba a könyvtárba, ahol telepítette a futtatható a csomag. Ha ez működik, ezt a sort a / etc / profile, így nem kell beírni, hogy minden alkalommal. By the way, akkor az ellenőrzés a hely, ahol a csomag telepítéséhez írja be a következő lehetőség, ha a configure script futtatása:
Változás a / usr könyvtárban vagy, ahova telepíteni szeretné a csomagot. Ne felejtsük el, hogy még csak egy előtag; bináris telepíti bele alkönyvtárban a könyvtár, a fejléc fájlokat a stb Például, ha a megadott előtag, bináris fájlok vannak telepítve a / usr / bin.
Szeretnék telepíteni egy nagyon régi verziója a csomag, de nem találom a forráskód az interneten. Még mindig van egy kis esély. Próbáld megtalálni az rpm csomagot fájl az a változat, amit akar, és töltse le a megfelelő fájlt a src rpm. Csomagolja ki az alábbiak szerint:
] $ Rpm2cpio
Most már használhatja a forráskód kivont rpm fájl.