Messages in this thread Patch in this message | | | Date | Mon, 3 Jun 1996 08:38:47 +1000 | From | Tony Nugent <> | Subject | Re: ppp-2.2.0f doesn't compile under pre2.0.10 |
| |
Todd M. Roy <salteroy@sover.net> wrote in linux-ppp:
[Crossposted to linux-kernel and linux-net.]
> Subject: ppp-2.2.0f doesn't compile under pre2.0.10
> I just tried to compile 2.2.0f under pre2.0.10 and got this > error. The last time I tried (successfully) I think was pre2.0.5 > with 2.2.0f-beta5. beta5 also gave me the same problem with > pre2.0.10. Thanks in advance. Fortunatly, the previously compiled > version is still running under 2.0.10. > > -- todd -- > > cc -O2 -D_linux_=1 -DHAVE_PATHS_H -c sys-linux.c -o sys-linux.o > In file included from /usr/include/linux/netdevice.h:31, > from /usr/include/net/if_arp.h:1, > from sys-linux.c:70: > /usr/include/linux/interrupt.h:9: warning: `struct pt_regs' declared inside parameter list > /usr/include/linux/interrupt.h:9: warning: its scope is only this definition or declaration, > /usr/include/linux/interrupt.h:9: warning: which is probably not what you want. > /usr/include/linux/interrupt.h:23: syntax error before `void' > /usr/include/linux/interrupt.h: In function `start_bh_atomic': > /usr/include/linux/interrupt.h:76: `intr_count' undeclared (first use this function) > /usr/include/linux/interrupt.h:76: (Each undeclared identifier is reported only once > /usr/include/linux/interrupt.h:76: for each function it appears in.) > /usr/include/linux/interrupt.h: In function `end_bh_atomic': > /usr/include/linux/interrupt.h:83: `intr_count' undeclared (first use this function) > make: *** [sys-linux.o] Error 1
I can confirm this with linux-1.99.10 (pre2.0.10), gcc-2.7.2, binutils-2.6.0.14, and libc-5.3.12.
:-(
In a following message, Todd also wrote this:
> Subject: Re: previous problem, a patch, very experimental.
> Well, I answered my own question, and have a "patch" > to sys-linux.c > > I added: > > extern unsigned long intr_count; > #define asmlinkage > > to the top. > > It compiled (still complaints about the structure in interrupt.h tho) > linked, and even is running, even as I type this.
I did this instead:
========8<-----------cut-here------------>8==================== diff -u ppp-2.2.0f/pppd/sys-linux.c.orig ppp-2.2.0f/pppd/sys-linux.c --- ppp-2.2.0f/pppd/sys-linux.c.orig Sat Apr 13 15:02:53 1996 +++ ppp-2.2.0f/pppd/sys-linux.c Mon Jun 3 08:02:55 1996 @@ -56,6 +56,10 @@ #include <fcntl.h> #include <ctype.h>
+#ifdef _linux_ +#include <linux/sched.h> +#endif + /* This is in netdevice.h. However, this compile will fail miserably if you attempt to include netdevice.h because it has so many references to __memcpy functions which it should not attempt to do. So, since I ========8<-----------cut-here------------>8==================== This works with _no_ complaints at all.
Why did I add <linux/shed.h> ??
[/usr/src/linux-1.99.10/include/linux]/% find -type f |xargs grep -n intr_count /dev/null include/linux/sched.h:14:extern unsigned long intr_count; include/linux/interrupt.h:76: intr_count++; include/linux/interrupt.h:83: intr_count--; include/linux/modules/ksyms.ver:121:#define intr_count _set_ver(intr_count, aaedaa28) However, in this case it might a kernel problem in that <linux/sched.h> should be #include'd by <linux/interrupt.h>
The use of autoconf to create a configure script is badly needed for pppd :)
Cheers . Tony _--_|\ tony@sctnugen.ppp.gu.edu.au / *\ T.Nugent@sct.gu.edu.au ae.nugent@student.qut.edu.au\_.--._/ tnugent@cit.gu.edu.au Brisbane, Queensland v Australia -=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-=*#*=-=*#*=- Men are seldom more innocently employed than when they are honestly making money. -- Samuel Johnson (1709-1784)
| |