Re: kernel compile problems with gcc 3.3
On Mon, 09 Jun 2003 18:26:46 GMT, Matthias Leopold wrote:
>hi
>
>i tried to recompile my 2.4.20 kernel with make-kpkg (as i have
>successfully done before) incorporating the xfs and ck patches. this
>time the process stopped with the following error message:
>
>net/network.o(.text+0xe117): In function `rtnetlink_rcv': :
>undefined reference to `rtnetlink_rcv_skb
>
>in google i found one reference to this problem (but no solution)
>which linked the problem to the newly introduced gcc-3.3. how do i
>avoid this?
Two ways. One is to use gcc-3.2.3. You can install the gcc-3.2.3
without uninstalling the gcc-3.3 package. Just change the symbolic
link in /usr/bin to point to the older compiler after install.
Alternately, you can edit /usr/src/linux/net/core/rtnetlink.c and
change the function declaration from extern __inline__ int
rtlink_rcv_skb(struct sk_buf *skb); to static inline int
rtlink_rcv_skb(struct sk_buf *skb); (The leading and trailing
underscores around inline are no longer needed.) Changing the
declaration from extern inline to static inline causes gcc-3.3 to
actually inline the function and fix the problem.
regards,
Dan
Reply to: