Chyba zepuste uClibc na TH - lvm2 i device-mapper

Jakub Bogusz qboosh w pld-linux.org
Nie, 3 Cze 2007, 21:52:06 CEST


On Sun, Jun 03, 2007 at 08:56:54PM +0200, Jakub Bogusz wrote:
> On Sun, Jun 03, 2007 at 08:43:54PM +0200, Marcin Król wrote:
> > > $ i486-uclibc-gcc -static -Os -g -o c c.c
> > > $ gdb c
> > > (gdb) r
> > > Starting program: /home/areq/rpm/BUILD/c
> > > 
> > > Program received signal SIGSEGV, Segmentation fault.
> > > 0x00000000 in ?? ()
> > > (gdb) bt
> > > #0  0x00000000 in ?? ()
> > > #1  0x08048377 in __uClibc_main ()
> > > #2  0x08048159 in _start ()
> > > (gdb) quit
> > 
> > Dawno temu (dokladnie 2 lata, prawie co do dnia) mialem ten sam problem
> > z uClibc 0.9.26 gdy do kompilacji uzywal on naglowkow kernela 2.6.
> > Powrot do naglowkow 2.4 rozwiazal wtedy problem. Moze twoj uClibc cierpi
> > na nowsza odmiane tego samego problemu? Upewnij sie, ze to nie problem
> > linux-libc-headers np linkujac tymczasowo prawdziwe zrodla kernela czy
> > to 2.4 czy 2.6 i kompilujac od nowa. Mnie juz kilka razy
> > linux-libc-headers przyprawialo o bol glowy.
> 
> Raczej nie to. Mam uClibc budowane na llh 2.6.20 lub 2.6.21 i efekt nie
> występuje. Ale jeszcze gcc 4.1.2.

Testy na carme-i686 (bo na x86_64 ktoś popsuł lokalnie uClibc i nie
znajduje plików gcc):

Pusty statycznie zlinkowany się wywala, taki z printfem już nie.

Natomiast jeśli chodzi o linkowanie dynamiczne, to winna jest zmiana
domyślnego --hash-style:

[qboosh w carme-pld-i686 ~]$ i686-uclibc-gcc -Wl,--hash-style=sysv -o c c.c
[qboosh w carme-pld-i686 ~]$ ./c ; echo $?
0


-- 
Jakub Bogusz    http://qboosh.pl/


Więcej informacji o liście dyskusyjnej pld-devel-pl