Re: lug-bg: IPX routing
- Subject: Re: lug-bg: IPX routing
- From: danchev@xxxxxxxxx (George Danchev)
- Date: Sun, 6 Jan 2002 23:34:02 +0200
Neznam dali ste ti pomogna, no neka po4nem malko otdale4e. BTW nqkoj se
beshe boril s tezi stari sources, ste go namerish na mail arhiva ot minalata
ili po-minalata godina. Mislq 4e imashe nqkakyv uspeh...
Zna4i kakyv e problema. Tvoq 2.2.19 kernel source nqma nikakva vina, toj dori
ne u4astva v sybitieto po kompilaciqta na ipxd.c , t.e. ne se include-va ot
nego nito edin .h file, a i dori i da se include-vashe pak nqma da stane
nomera stoto source-to na tova ipxd e staro i kogato e pisano e syobrazeno da
polzva 1.3.xx kernel headers kojto sa imali syvsem razli4na funkcionalnost:).
Ta imalo edno vreme 1.0.xx 2.0.xx kernels, togava susto imalo i GNU libc edi
koi si versii :). Oba4e poradi mnogo pri4ini v libc-to ima kernel headers i
edno vreme sa reshavali tozi vypros taka:
/usr/include/linux -> /usr/src/linux/include/linux
/usr/include/asm -> /usr/src/linux/inclide/asm-<arch>
/usr/include/scsi -> /usr/src/linux/include/scsi
t.e s symlinks ot libc-to direktno kym kernel headers v source-to na tekustiq
ti kernel. Smenqsh si kernel source-to, smenq se i kernel headers... za tova
e kazano v dokumenta kojto si pro4el 4e iska 1.3.xx kernel, stoto edno vreme
sa znaeli 4e /usr/inlude/linux ste so4i kym /usr/src/linux/include/linux.
Razbira se tozi business s symlinkovete kym tekustoto kernel source e mnogo
opasen i bi trqbvalo da se polzva samo ot libc developers stoto te naistina
trqba da reshat kakvo trqbva da premina or kernela kym libc-to v sledvashtiq
release na bibliotekata ... pyk i te znaqt kak da se opravqt ako v daden
monent sled smqna na kernel sourceto se okazhe 4e v kernel headers funkciite
sa totalno promeneni i prosto user space programite kojto do sega sa se
kompilirali OK, ve4e ne se kompilirat i link-vat dokato ne poglednesh kvi sa
poromenite v kernel headers i da poopravish source-a na prilozhenieto 4e da
se kompilqsva.... i mozhesh samo da se nadqvash 4e tova binary nqma da se
linkva lym nqkoj shared object kojto e bil kompiliran srqmo stari headers. No
edno vreme vsi4ki users sa bili developers :) .
V dneshni vremena (2.2.xx 2.4.xx kernels) da imash goreposo4enite symlinks e
prosto zaqvka za problem, i to _golqm_ . Vsustnost ti pak si imash kernel
headers v libc-to, no te sa tezi sprqmo kojto e kompilirano libc-to, i ne
biva da se promenqt. T.e. /usr/src/linux e direktoriq a NE _symlink_ kym
sourceto na tekustiq ti kernel. Ponqkoga ima i /usr/src/linux.old , v tazi
direktoriq se sydurzhat po-stari kernel headers i ponqkoga se prenaso4va gcc
s opciqta -I za da include-va ot tam i nomera minava pri kompilaciqta na
takiva stari source-ta kojto raz4itat na stari .h files.
Ako iskash si napravi experimenta ... drupni source-a na 1.3.xx kernel i ako
ne ti se rovi po Makefiles na ipxrid-to 4e da prenaso4vash s -I, to togava
prosto otidi v /usr/include:
mv linux linux.orig
ln -s /path/to/linux-kernel-1.3.xx/inlude/linux linux
mozhe i da se kompilira no dali ste raboti edin gospod znae :)
posle v /usr/include mahash tozi symlink i si vrustash "linux.orig" kato
"linux" !
osven ipx.h sigurno ima i drugi podobni problemni includes...
> root@wireless:/work/ipxripd# make
> cc -Wall -O2 -g -c -o ipxd.o ipxd.c
> In file included from ipxutil.h:28,
> from ipxd.h:27,
> from ipxd.c:33:
> /usr/include/linux/ipx.h:11: parse error before `__u16'
> /usr/include/linux/ipx.h:11: warning: no semicolon at end of struct or
> union /usr/include/linux/ipx.h:12: warning: data definition has no type or
> storage class
> /usr/include/linux/ipx.h:14: parse error before `sipx_type'
> /usr/include/linux/ipx.h:14: warning: data definition has no type or
> storage class
> /usr/include/linux/ipx.h:16: parse error before `}'
> /usr/include/linux/ipx.h:29: parse error before `__u32'
> /usr/include/linux/ipx.h:29: warning: no semicolon at end of struct or
> union /usr/include/linux/ipx.h:30: warning: data definition has no type or
> storage class
> /usr/include/linux/ipx.h:32: parse error before `}'
> /usr/include/linux/ipx.h:32: warning: data definition has no type or
> storage class
> /usr/include/linux/ipx.h:36: parse error before `__u32'
> /usr/include/linux/ipx.h:36: warning: no semicolon at end of struct or
> union /usr/include/linux/ipx.h:50: parse error before `}'
> /usr/include/linux/ipx.h:50: warning: data definition has no type or
> storage class
> /usr/include/linux/ipx.h:64: parse error before `__u32'
> /usr/include/linux/ipx.h:64: warning: no semicolon at end of struct or
> union /usr/include/linux/ipx.h:65: warning: data definition has no type or
> storage class
> /usr/include/linux/ipx.h:74: parse error before `}'
> In file included from ipxd.h:29,
> from ipxd.c:33:
> ipxsap.h:72: field `dest_addr' has incomplete type
> In file included from ipxd.h:30,
> from ipxd.c:33:
> ipxrip.h:58: field `dest_addr' has incomplete type
> In file included from ipxd.c:33:
> ipxd.h: In function `print_time':
> ipxd.h:71: warning: implicit declaration of function `time'
> ipxd.h:72: warning: implicit declaration of function `ctime'
> ipxd.h:72: warning: format argument is not a pointer (arg 3)
> ipxd.c: At top level:
> ipxd.c:64: initializer element is not constant
> ipxd.c: In function `ifc_net':
> ipxd.c:69: warning: `__v' might be used uninitialized in this function
> ipxd.c: In function `run':
> ipxd.c:462: storage size of `sipx' isn't known
> ipxd.c:462: warning: unused variable `sipx'
> make: *** [ipxd.o] Error 1
> root@wireless:/work/ipxripd#
mda, eto kolko mnogo nesta sa promenini v ipxd.h , a tozi kojto e pisal
ipxd.c o4akva syvsem drugo da include ot tam :)
> E iavno e che s toia kernel naima da stane ama ne mi se slaga 1.3.x po
> lichni syobrajenia :))
dori i da slozhish source na 1.3.x kernel v /usr/src to siguren sym 4e nqma
da byde include-vano ot nego stoto v /usr/include nqmash symlinks kym nego.
Edno vreme e bilo drugo :)
> Blagodaria vi i ako imate idei shte vi byda blagodaren.
e nadqvam se 4e shvana de e problema, dori i az go razbrah :)
> mano
>
> ===========================================================================
> A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers)
> http://www.linux-bulgaria.org/ Hosted by Internet Group Ltd. - Stara Zagora
--
Greets,
fr33zb1
===========================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers)
http://www.linux-bulgaria.org/ Hosted by Internet Group Ltd. - Stara Zagora
|