lilo-22.5.8 się nie buduje
Jakub Bogusz
qboosh w pld-linux.org
Pon, 2 Lut 2004, 21:40:50 CET
On Mon, Feb 02, 2004 at 09:23:40PM +0100, Grzegorz Goławski wrote:
> Cześć,
>
> lilo-22.5.8 nie buduje się z najnowszymi glibc-kernel-headers:
>
> athlon-pld-linux-gcc -c -O2 -march=athlon -Wall -g -DLILO=0x16c2d41b `
> ( if [ -r $ROOT/etc/lilo.defines ]; then cat $ROOT/etc/lilo.defines;
> else echo -DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DONE_SHOT -
> DPASS160 -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL;
> fi ) | sed 's/-D/-DLCF_/g'` geometry.c
> geometry.c: In function `lvm_bmap':
> geometry.c:438: error: subscripted value is neither array nor pointer
> geometry.c:450: error: subscripted value is neither array nor pointer
> make: *** [geometry.o] Błąd 1
> błąd: Błędny status wyjścia z /var/tmp/rpm-tmp.5035 (%build)
>
> Wyguglałem, że w debianie przy nagłówkach jajka 2.6 był też taki sam
> błąd. Z dyskusji wynika, że lilo wymaga nagłówków z jajka 2.4, więc może
> jakiś spec od gkh przyjżałby się temu i dodał potrzebne rzeczy do
> naszych nagłówków?
>
> Link do dyskusji:
> http://lists.debian.org/debian-glibc/2003/debian-glibc-200311/msg00087.
> html
To nie tak. lilo nie używa nagłówka <linux/lvm.h> (którego w 2.6 nie ma),
ma własne definicje tych ioctl-i. Tyle że zwalone dokładnie tak samo jak
oryginalne z Linuksa 2.4.
Poprawka na geometry.c (z uwzględnieniem bug-compatibility - inaczej by
nie działało na 2.4):
#ifndef LV_BMAP
-#define LV_BMAP _IOWR(0xfe, 0x30, 1)
+#define LV_BMAP _IOWR(0xfe, 0x30, int)
#endif
#ifndef LVM_GET_IOP_VERSION
-#define LVM_GET_IOP_VERSION _IOR(0xfe, 0x98, 1)
+#define LVM_GET_IOP_VERSION _IOR(0xfe, 0x98, int)
#endif
#endif
(jako że sizeof(1) == sizeof(int))
--
Jakub Bogusz http://cyber.cs.net.pl/~qboosh/
Więcej informacji o liście dyskusyjnej pld-devel-pl