PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : util-linux Kompilierungsprobleme



srynonick
01.03.06, 22:40
hab mir die aktuellen util-linux sourcen gezogen (util-linux-2.12r) und gepatched (siehe http://www.linuxforen.de/forums/showthread.php?t=189386, brauch das ganze für loop-aes).

bis hierher läuft alles ohne fehler :)
führe ich dann allerdings

./configure
aus, bekomme ich folgende fehler:


configuring util-linux-2.12r

You don't have <scsi/scsi.h>
You don't have <linux/blkpg.h>
You don't have <linux/kd.h>
You don't have <locale.h>
You don't have <langinfo.h>
You don't have <sys/user.h>
You don't have <asm/page.h>
You don't have <uuid/uuid.h>
You don't have <rpcsvc/nfs_prot.h>
You don't have <asm/types.h>
You don't have <linux/raw.h>
You don't have <stdint.h>
You don't have <sys/io.h>
You don't have inet_aton()
You don't have fsync()
You don't have getdomainname()
You don't have nanosleep()
You don't have personality()
You don't have updwtmp()
You don't have fseeko()
You don't have lchown()
You don't have rpmatch()
You don't have <term.h>
You don't have ncurses - I will not make ul and setterm.
You don't have termcap - I will not make more.
You need -lcrypt
Strange... Static compilation fails here.
You don't have native language support
You don't have __progname
You don't have <pty.h> and openpty()
You don't have wide character support
You don't have SYS_pivot_root
You don't have a tm_gmtoff field in struct tm
Your rpcgen output does not compile - using pregenerated code
You don't have zlib
You don't have blkid
was muss ich für diese dateien installieren? (nutze ubuntu 5.10, auch wenn das wohl nicht direkt von belang sein dürfte)

xanlosch
02.03.06, 05:11
Dir fehlen haufenweise die Entwickler-/Devel-Pakete !

Wenn ich das richtig seh und interpretier von GlibC, GCC, Zlib, ncurses.

Edit: Laut der LinuxFromScratch-Anleitung (http://www.linuxfromscratch.org/lfs/view/stable/chapter06/util-linux.html) sind es noch zusätzlich: Binutils, CoreUtils, Diffutils, Gettext - ob es zuviele oder zu wenige Entwickler-Pakete sind, weiß ich aber nicht.

srynonick
02.03.06, 10:05
danke für deine antwort, hat mir weiter geholfen, leider kann ich net mehr genau sagen was ich installiert habe, da ichs voll verpeilt hab richtig hinzuguckn um zu sehn das es schon
you have ...
heißt, dachte da fehlt dann einfach der eintrag für und die liste wird kürzer. hab das aber jetzt in ner vm gemacht, werd mir für meine richtige installation noch die richtigen pakete raussuchen und dann auch hier posten (kann aber n weile dauern^^).
nur einen fehler hab ich noch:

You need -lcrypt
das sieht nach nem parameter aus, muss ich da was am kernel ändern? das einzige paket, dass damit was zu tun haben könnte, tclcrypt, zu installieren hat nix gebracht ):

edit:

Wenn ./configure keinen Fehler meldet, kannst du normal mit dem nächsten Schritt weiter machen. Die Information "You need -lcrypt", besagt nur, dass das configure Script festgestellt hat, dass der Parameter -lcrypt verwendet werden muss. Dementsprechend wird das Makefile dann auch erstellt, so dass dieser Parameter beim compilieren automatisch benutzt wird.

leider bekomm ich bei make fehler, werds später posten.

xanlosch
02.03.06, 10:27
-lcrypt ist kein Parameter am Kernel, sondern eine Information für den Linker, dass die Bibliothek crypt (Dateiname meist libcrypt.so) beim Linken mit hinzugefügt werden muss. In welchen Paket die jetzt steckt, kann ich dir auf die schnelle nicht sagen, aber das solltest du mit etwas Suche in deinem Paketmanager hinbekommen.

drcux
02.03.06, 10:32
You need -lcrypt heißt, das die libcrypt(-devel) fehlt...

srynonick
02.03.06, 12:02
hmm ich konnte bei mir mit apt-cache search / synaptic diese bibliothek (libcrypt-devel oder libcrypt-dev) leider nicht finden, google hab ich auch net wirklich was gefunden, woher bekomm ich das ganze denn?
n paar ähnliche vom name her hab ich gefunden, hat aber nix gebracht ):

hier mal noch mein make ergebnis:

make ADD_RAW=no
make[1]: Entering directory `/home/ubuntu/Desktop/util-linux-2.12r/po'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/ubuntu/Desktop/util-linux-2.12r/po'
make[1]: Entering directory `/home/ubuntu/Desktop/util-linux-2.12r/lib'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/ubuntu/Desktop/util-linux-2.12r/lib'
make[1]: Entering directory `/home/ubuntu/Desktop/util-linux-2.12r/getopt'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/ubuntu/Desktop/util-linux-2.12r/getopt'
make[1]: Entering directory `/home/ubuntu/Desktop/util-linux-2.12r/disk-utils'
cc -c -pipe -O2 -mtune=i486 -fomit-frame-pointer -I../lib -Wall -Wmissing-prototypes -Wstrict-prototypes -DNCH=1 -D_FILE_OFFSET_BITS=64 -DSBINDIR=\"/sbin\" -DUSRSBINDIR=\"/usr/sbin\" -DLOGDIR=\"/var/log\" -DVARPATH=\"/var\" -DLOCALEDIR=\"/usr/share/locale\" -O2 fsck.cramfs.c -o fsck.cramfs.o
fsck.cramfs.c:98: error: variable-size type declared outside of any function
make[1]: *** [fsck.cramfs.o] Error 1
make[1]: Leaving directory `/home/ubuntu/Desktop/util-linux-2.12r/disk-utils'
make: *** [all] Error 1

zusammenfassenf hab ich also zur zeit folgende probleme:
1) ./configure

You need -lcrypt

2) den fehler bei make, siehe oben

drcux
02.03.06, 12:11
:~# apt-file search libcrypt.so
libc6: lib/libcrypt.so.1
libc6-dev: usr/lib/libcrypt.so

srynonick
02.03.06, 13:56
super, genau sowas hab ich gebraucht :)
wird mein linux leben in zukunft wohl enorm erleichtern, seltsam dass ich darüber nich nie zuvor was gelesen hab und es bei ubuntu standardmäßig noch net mal installiert ist...

leider bekomme ich folgende Meldung:

libc6-dev is already the newest version.
scheint so, als trifft das zitat das ich zu meinem libcrypt problem gefunden habe zu:

Die Information "You need -lcrypt", besagt nur, dass das configure Script festgestellt hat, dass der Parameter -lcrypt verwendet werden muss. Dementsprechend wird das Makefile dann auch erstellt, so dass dieser Parameter beim compilieren automatisch benutzt wird.

bliebe aber immer noch der make fehler ):

make ADD_RAW=no
make[1]: Entering directory `/home/ubuntu/Desktop/util-linux-2.12r/po'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/ubuntu/Desktop/util-linux-2.12r/po'
make[1]: Entering directory `/home/ubuntu/Desktop/util-linux-2.12r/lib'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/ubuntu/Desktop/util-linux-2.12r/lib'
make[1]: Entering directory `/home/ubuntu/Desktop/util-linux-2.12r/getopt'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/ubuntu/Desktop/util-linux-2.12r/getopt'
make[1]: Entering directory `/home/ubuntu/Desktop/util-linux-2.12r/disk-utils'
cc -c -pipe -O2 -mtune=i486 -fomit-frame-pointer -I../lib -Wall -Wmissing-prototypes -Wstrict-prototypes -DNCH=1 -D_FILE_OFFSET_BITS=64 -DSBINDIR=\"/sbin\" -DUSRSBINDIR=\"/usr/sbin\" -DLOGDIR=\"/var/log\" -DVARPATH=\"/var\" -DLOCALEDIR=\"/usr/share/locale\" -O2 fsck.cramfs.c -o fsck.cramfs.o
fsck.cramfs.c:98: error: variable-size type declared outside of any function
make[1]: *** [fsck.cramfs.o] Error 1
make[1]: Leaving directory `/home/ubuntu/Desktop/util-linux-2.12r/disk-utils'
make: *** [all] Error 1

xanlosch
02.03.06, 15:14
Edit: Ich hab gerade mal in die Entwickler-Version der LinuxFromScratch-Anleitung (http://www.linuxfromscratch.org/lfs/view/development/chapter06/util-linux.html) geschaut und dort wird etwas am CramFS gepatcht. Probier am besten den Patch mal aus !

srynonick
02.03.06, 20:53
danke, mit dem patch konnt ichs kompilieren, gab zwar zig warnungen, aber keine fehler :)
die gibs bei loop-aes dafür umso mehr, aber dafür mach ich der übersichtlichkeit und ordnung zuliebe demnächst n neues thema auf ;)