PPPD 2.2 won't compile under 1.3.83

PPPD 2.2 won't compile under 1.3.83

Post by Arthur Prokos » Tue, 16 Apr 1996 04:00:00



I'm trying to get my PPP to work again under the new kernel - 1.3.83 - but
gcc doesn't like some of the source files in the pppd/ directory.  For
both ppp-2.2.0d and ppp-2.2.0e, I get the same errors - something like
parsing errors in a few of the .h files there.  Has anyone else had these
errors?  Any ideas?

Thanks

--
-=-,-=-,-=-,-=-,-=-,-=-,-=-,-=-,-=-,-=-,-=-,-=-,-=-,-=-,-=-
    "The early bird escapes the cat!" --Arthur Prokosch


-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-

 
 
 

PPPD 2.2 won't compile under 1.3.83

Post by Hyun-Min PA » Wed, 17 Apr 1996 04:00:00




>I'm trying to get my PPP to work again under the new kernel - 1.3.83 - but
>gcc doesn't like some of the source files in the pppd/ directory.  For
>both ppp-2.2.0d and ppp-2.2.0e, I get the same errors - something like
>parsing errors in a few of the .h files there.  Has anyone else had these
>errors?  Any ideas?

>Thanks

>-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-'-=-

Some enlightning soul has helped me in this
reguard..  (Thanks a lot, sorry that I lost your e-mail)

You need to do 2 things.

In newer kernels, the header file has been changed around
a bit.  So, you need to shange the header file that the
PPP #includes.

This isn't too bad, very simple thing to do:
Change all the occurence of #include <sys/types.h>
into #include <sys/bitypes.h>

Then, when you make all, and during the linking
phase, there will be 1 unresolved symbol, it is
defined as extern.

The definition for this symbol is found in
<linux/net-***  ( i forgot the exact wording..  DARN!!)>
Darn!!  I will have to look for it when I get home.

However, in the mean time, you can just grep for the
unresolved symbol in /usr/include/linux directory.

or was it linux/net directory?  

Well, anyways, do NOT include that file, just edit
the ppp-main.c (or was it just main.c) so that the
definition is in there
#define WHATEVER 7 (as far as I remember, it was 7)

Then make!!

It will work out just fine!!

Good luck.

PS:  Maybe I should just post a patch code in a
newsgroup somewhere..

 
 
 

PPPD 2.2 won't compile under 1.3.83

Post by Henk Van Wulpe » Thu, 18 Apr 1996 04:00:00





> >I'm trying to get my PPP to work again under the new kernel - 1.3.83 - but
> >gcc doesn't like some of the source files in the pppd/ directory.  For
> >both ppp-2.2.0d and ppp-2.2.0e, I get the same errors - something like
> >parsing errors in a few of the .h files there.  Has anyone else had these
> >errors?  Any ideas?

I ran into the same problems and spent hours on fixing it :I. As a result I
know all the relevant information by heart now so I can complete the missing
parts in Hyun-Min's reply :).

Quote:> You need to do 2 things.

> In newer kernels, the header file has been changed around
> a bit.  So, you need to shange the header file that the
> PPP #includes.

> This isn't too bad, very simple thing to do:
> Change all the occurence of #include <sys/types.h>
> into #include <sys/bitypes.h>

This was easy to solve, indeed the undefined type (u_int32_t) is defined in
sys/bitypes.h

Quote:> Then, when you make all, and during the linking
> phase, there will be 1 unresolved symbol, it is
> defined as extern.

> The definition for this symbol is found in
> <linux/net-***  ( i forgot the exact wording..  DARN!!)>
> Darn!!  I will have to look for it when I get home.

The name of the undefined symbol is MAX_ADDR_LEN which is defined as 7 in
linux/net-device.h

Quote:> Well, anyways, do NOT include that file, just edit
> the ppp-main.c (or was it just main.c) so that the
> definition is in there
> #define WHATEVER 7 (as far as I remember, it was 7)

Now this is where I lost all my valuable time! Just thinking that it would
be sufficient to include linux/net-device.h I went on with my tweaking. Then
I ran into a few dozen undefined symbols on linking pppd : __memset_generic_,
__constant_and_c_memset_,... However I couldn't find at all how these symbols
came into my sys-linux.o (in the pppd-directory). Anyway, in the end I
found out that I got this problem by including net-device.h in sys-linux.h.
CAN ANYONE ENLIGHTEN ME and tell me how this simple include suddenly gives a
couple of undefined memset- and memcopy-derivates in the object module while
there is no trace of them in net-device.h ??????????? And what is the meaning
of symbols __memset_generic, __constant_and_c_memset, etc.. ????

Thanks !!!

        Henk

--

Dept. of Computer Science           WWW : http://www.cs.kuleuven.ac.be/~henk/
K.U.Leuven - Belgium

 
 
 

1. Kernel 1.3.83 won't compile modules

OK, I can compile Linux as a monolithic kernel no sweat.  But when I go
and try the modules/kerneld thing, I get this midway through the compile:

make[2]: Entering directory `/s1/will/linux/net'
gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2
-fomit-frame-pointer -fno-strength-reduce -pipe -m386 -DCPU=386
-DMODVERSIONS -DEXPORT_SYMTAB -c netsyms.c
netsyms.c:65: macro `_basic_version' used with just one arg
netsyms.c:66: macro `_basic_version' used with just one arg
netsyms.c:68: macro `_basic_version' used with just one arg
netsyms.c:65: `sock_setsockopt' undeclared here (not in a function)
netsyms.c:65: initializer element for `net_syms.symbol[3].addr' is not
constant
netsyms.c:66: `sock_getsockopt' undeclared here (not in a function)
netsyms.c:66: initializer element for `net_syms.symbol[4].addr' is not
constant
netsyms.c:68: `sock_alloc_send_skb' undeclared here (not in a function)
netsyms.c:68: initializer element for `net_syms.symbol[6].addr' is not
constant
make[2]: *** [netsyms.o] Error 1

Has anybody else gotten this problem?  Has anybody else compiled 1.3.83
with modules?  I am interested in running this kernel, because I
understand that 1.3.84 breaks DOSEMU.  If only later kernels will compile
with modules, I will update.

--
--
William Burrow  --  Fredericton Area Network

2. aumix -- how do I adjust the balance?

3. 1.3.83 and PPPD

4. Moving Linux partition

5. Dosemu (any version) will not compile with linux 1.3.83+

6. CRON

7. Kernel Change Summary 1.3.83

8. Question on Kermit

9. 1.3.83 - strange behavior of localhost

10. Help needed with hangup in bootup in kernel 1.3.83

11. top command not working after 1.3.83

12. pcmcia-cs under 1.3.83

13. Console Problems 1.2.13->1.3.83