make, make install....

Fórumok

Hello

Ugye azért szertjük a linuxot mert forrásból lehet beforgatni programokat amik így pontosan kitudják használni az erőforrásokat. Ugye ez így történki hogy

./configure
make
make install

Nos a ./configure parancs se meg le rendesen mert a végén
configure: error: C compiler cannot create executables
See 'config.log for more details

nos én ezt a logot kerestem de nem találtam a /var/log alatt. Sebaj gondolom megyünk tovább
make parancs
itt már végleg megálla tudományom mert az írja ki nemes egyszerűséggel hogy nincs cél. míg a man make ben az van hogy a make parancs átnézi a könyvtárat és létrehozza a futási fájlokat(ha jól értem)(gondolom ezért is make a parnacs neve).
ez után a már felesleges tovább menni mert hát ugye nem csinált semmit.
így nem tudom felrakni az új FUSE ami kell a NTFS partíció olvasáshoz :(

Hozzászólások

Ha a ./configure hibával áll le, akkor nem jön létre a Makefile, tehát nem fogsz tudni továbbmenni.

Van fönt C fordító (gcc)?

Szerk.: Szerintem egyszerűbb lenne csomagból föltenni az ntfs-3g-t. Ehhez itt találsz segítséget.

de a legjobb az hogy épp ez végett raktam fel a gcc fordítót. biztosnág kevéért ellenőrzitem is egy
apt-get install gcc parancsal és nincs új csomag. szóval fent van. úgy hogy nem értem miért nem megy le a ./configure
--
forever linux
Egyre több informatikusnak van nemi élete. Hígul a szakma...

> Van fönt C fordító (gcc)?

configure: error: C compiler cannot create executables
Kell legyen, inkább arra panaszkodik, hogy nem tudja a lefordított fájlt létrehozni. Van írási jogod a könyvtárra (és az esetleges alkönyvtáraira)?

A configure egyébként pontosan arra való - amellett, hogy létrehozza a Makefile-okat, - hogy minél több gond kiderüljön még fordítás előtt.

Az a "config.log" nem a "/var/log" alatt van, hanem a forráskód könyvtárjában.

Ha a configure script errorral leáll, akkor felesleges tovább menni, a make nem fog lefutni.
A forrásból telepítés jó dolog, de nem árt szem előtt tartani a rendszered tulajdonságait. Ha nincs speciális igényed, akkor ésszerűbb a csomagkezelőt használni ilyen célra. Egyrészt így nem túrod szét a rendszeredet feleslegesen, egy csomó időt és idegességet megspórolhatsz magadnak, a csomag (program) a disztród által supportált és folyamatosan frissített lesz és ha kell, el is tudod távolítani azt könnyen.
Épp ezért nézz szét a csomagkezelődben. Ubuntun, vagy debinanon gnome alatt ez megtehető a Synaptic használatával könnyen grafikus felületen. Vagy parancssorból: "sudo apt-get install fuse ntfs-3g" és ez be fog rántani minden függőséget.
szerk.: http://www.ntfs-3g.org & http://fuse.sourceforge.net
ezeket sem árt átolvasni, ha annyira szeretnél forrásból telepíteni.
::sumo.conf::

Ntfs olvasas kernelbol megy, tehat ott kell beleforgatnod. Amugy ntfs-3g-t csomagbol a legegyszerubb telepiteni. Nem kell semmit se forgatni.

-------------------------------------

|^^^^^^^^^^^^^^^| ||
|...BEER TRUCK..........| ||'|";, ___.
|_..._..._______===|=||_|__|......, ] -
"(@)'(@)"""**|(@)(@)*** **''(@)

Amúgy írási jogra visszatérve, ha tényleg ez a gond, akkor ne a rootként fordítás legyen a megoldás, szokták mondani. Hanem pl.:

- tedd bele magadat src csoportba
- chgrp -R src /valami/forráscsomag
- chmod -R g+w /valami/forráscsomag

egyedül a make install parancsot kell root-ként - akár sudo-val - futtatni.

Mindenki osztja az eszt, hogy rakd fel csomagbol. Ez is megoldas, de ez nem problemamegoldas, hanem megkerulese aproblemanak.
Nezd meg a configure konyvtaraban a config.log -ot, esetleg ha nem nagyon latod a bajt, akkor ide dobd be az utolso 20-30 sort, hatha azzal mar tobbre megyunk. (Meg elobb ellenorizd a nem-csomagtelepitesre vonatkozo egyeb tippeket (noexec mount, irasi jog - bar akkor mar a config.log letrehozasanal is kajabalni kene, stb)

Hasonló problémával küzdök én is, ugyanis van a splashutils nevezetű progi, a forrásfájlok közt ott leledzik a configure, a makefile.in és .am. Na de ezeket a make nem akarja 'kezelni / észrevenni', ha bármelyiket is bejelölöm -f paraméterként, nem csinál velük semmit. Ezek a fájlok egyáltalán micsodák, pontosabban mi kezeli őket?
Azt akarom, hogy az emberek ne kényszerből tanuljanak, hanem azért, mert tudni akarnak.

Ja, elolvastam azokat, de ott is csak azok a parancsok szerepelnek, amiket Te is mondasz, meg amivel már én is próbálkoztam - sikertelenül.

make: *** No targets specified and no makefile found. Stop.

Nem tudom, milyen Makefile kéne neki...
Azt akarom, hogy az emberek ne kényszerből tanuljanak, hanem azért, mert tudni akarnak.

A fordítás egy dolog, de linkelni is kellene, hogy létrejöjjön a futtatható állomány. Ahhoz meg kellene egy linker.
Én mielőtt nekiállok egy rendszeren fordítani, az alábbi csomagokat teszem fel: flex, bison, nasm, automake, autoconf, libtool, binutils, g++ (ezt csak a biztonság kedvéért).

apt-get install build-essential

Ezután nem fog sírni a configure / make

--
Elméletileg nincs különbség elmélet és gyakorlat között. Gyakorlatilag van.

Köszi mindenkinek a segítséget, úgy néz ki én voltam figyelmetlen és nem szúrt szemet a hibaüzenet, mi szerint ez-meg-az hiányzik... :\ Mindenesetre az apt-file nagyban segített, már nemtom ki és melyik topicban említette, de ezer köszi érte, aranyat ér!
Azt akarom, hogy az emberek ne kényszerből tanuljanak, hanem azért, mert tudni akarnak.

Nem akartam új threadet nyitni. Valami egészen apró hülyeséget cseszhetek el, de nem vágom, hogy mit:

make -f Makefile (gcc4.3.2 van fönn)

make[2]: g++: Command not found
make[2]: *** [application.o] Error 127
make[1]: *** [gcc] Error 2
make: *** [default] Error 2
se -DNDEBUG -g -Wall -fno-exceptions -fno-rtti" \
all
make[2]: Entering directory `/home/foo/stockfish-16-ja/stockfish-16-ja/src'
g++ -O3 -msse -DNDEBUG -g -Wall -fno-exceptions -fno-rtti -c -o application.o application.cpp
make[2]: Leaving directory `/home/foo/stockfish-16-ja/stockfish-16-ja/src'
make[1]: Leaving directory `/home/foo/stockfish-16-ja/stockfish-16-ja/src'

a sorok nincsenek sorrendben, de az úgyse' lényeges.