2003-03-05 12:53:37

by Andreas Metzler

[permalink] [raw]
Subject: [2.4.21-pre5] compile error in ip_conntrack_ftp.c:440:

Since iirc 2.4.20 I get this error when compiling a kernel:
|-------------------
| make[2]: Entering directory `/tmp/KERNEL/linux-2.4.20-pre5/net/ipv4/netfilter'
| make[2]: Circular /tmp/KERNEL/linux-2.4.20-pre5/include/linux/netfilter_ipv4/ip_conntrack_helper.h <- /tmp/KERNEL/linux-2.4.20-pre5/include/linux/netfilter_ipv4/ip_conntrack.h dependency dropped.
| ld -m elf_i386 -r -o ip_conntrack.o ip_conntrack_standalone.o ip_conntrack_core.o ip_conntrack_proto_generic.o ip_conntrack_proto_tcp.o ip_conntrack_proto_udp.o ip_conntrack_proto_icmp.o
| gcc -D__KERNEL__ -I/tmp/KERNEL/linux-2.4.20-pre5/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -nostdinc -iwithprefix include -DKBUILD_BASENAME=ip_conntrack_ftp -c -o ip_conntrack_ftp.o ip_conntrack_ftp.c
| ip_conntrack_ftp.c:440: parse error before `this_object_must_be_defined_as_export_objs_in_the_Makefile'
| ip_conntrack_ftp.c:440: warning: type defaults to `int' in declaration of `this_object_must_be_defined_as_export_objs_in_the_Makefile'
| ip_conntrack_ftp.c:440: warning: data definition has no type or storage class
| make[2]: *** [ip_conntrack_ftp.o] Error 1
| make[2]: Leaving directory `/tmp/KERNEL/linux-2.4.20-pre5/net/ipv4/netfilter'
| make[1]: *** [_modsubdir_ipv4/netfilter] Error 2
| make[1]: Leaving directory `/tmp/KERNEL/linux-2.4.20-pre5/net'
| make: *** [_mod_net] Error 2
|-------------------

IIRC the error is in ip_conntrack_itc, too.

How to reproduce:
make mrproper
copy config below to .config
make menuconfig --> Exit&Save
make dep
# optional: make bzImage - Logfile above was generated this way
make modules

This looks exactly like
http://www.uwsg.iu.edu/hypermail/linux/kernel/0209.2/0923.html
but hasn't this been fixed since?

Please Cc me on replies.
thanks, cu andreas

----------stripped down example config---------
CONFIG_X86=y
CONFIG_UID16=y
CONFIG_MODULES=y
CONFIG_KMOD=y
CONFIG_M686=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_L1_CACHE_SHIFT=5
CONFIG_X86_HAS_TSC=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_PGE=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_PPRO_FENCE=y
CONFIG_X86_F00F_WORKS_OK=y
CONFIG_NOHIGHMEM=y
CONFIG_X86_TSC=y
CONFIG_NET=y
CONFIG_SYSVIPC=y
CONFIG_BINFMT_ELF=y
CONFIG_PACKET=m
CONFIG_PACKET_MMAP=y
CONFIG_NETLINK_DEV=m
CONFIG_NETFILTER=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_INET_ECN=y
CONFIG_IP_NF_CONNTRACK=m
CONFIG_IP_NF_FTP=m
CONFIG_IP_NF_IRC=m
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_LIMIT=m
CONFIG_IP_NF_MATCH_MAC=m
CONFIG_IP_NF_MATCH_MARK=m
CONFIG_IP_NF_MATCH_MULTIPORT=m
CONFIG_IP_NF_MATCH_TOS=m
CONFIG_IP_NF_MATCH_LENGTH=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_MATCH_TCPMSS=m
CONFIG_IP_NF_MATCH_STATE=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_TOS=m
CONFIG_IP_NF_TARGET_MARK=m
CONFIG_IP_NF_TARGET_LOG=m
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_IP_NF_TARGET_TCPMSS=m
CONFIG_IP_NF_COMPAT_IPCHAINS=m
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_DRM=y
CONFIG_DRM_NEW=y
CONFIG_RAMFS=y
CONFIG_MSDOS_PARTITION=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_ZLIB_INFLATE=y
----------------------------------------


2003-03-22 01:39:31

by Michael Mauch

[permalink] [raw]
Subject: Re: [2.4.21-pre5] compile error in ip_conntrack_ftp.c:440:

Andreas Metzler <[email protected]> wrote:
> Since iirc 2.4.20 I get this error when compiling a kernel:
> |-------------------
> | make[2]: Entering directory `/tmp/KERNEL/linux-2.4.20-pre5/net/ipv4/netfilter'
> | make[2]: Circular /tmp/KERNEL/linux-2.4.20-pre5/include/linux/netfilter_ipv4/ip_conntrack_helper.h <- /tmp/KERNEL/linux-2.4.20-pre5/include/linux/netfilter_ipv4/ip_conntrack.h dependency dropped.
> | ld -m elf_i386 -r -o ip_conntrack.o ip_conntrack_standalone.o ip_conntrack_core.o ip_conntrack_proto_generic.o ip_conntrack_proto_tcp.o ip_conntrack_proto_udp.o ip_conntrack_proto_icmp.o
> | gcc -D__KERNEL__ -I/tmp/KERNEL/linux-2.4.20-pre5/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -nostdinc -iwithprefix include -DKBUILD_BASENAME=ip_conntrack_ftp -c -o ip_conntrack_ftp.o ip_conntrack_ftp.c
> | ip_conntrack_ftp.c:440: parse error before `this_object_must_be_defined_as_export_objs_in_the_Makefile'
> | ip_conntrack_ftp.c:440: warning: type defaults to `int' in declaration of `this_object_must_be_defined_as_export_objs_in_the_Makefile'
> | ip_conntrack_ftp.c:440: warning: data definition has no type or storage class
> | make[2]: *** [ip_conntrack_ftp.o] Error 1
> | make[2]: Leaving directory `/tmp/KERNEL/linux-2.4.20-pre5/net/ipv4/netfilter'
> | make[1]: *** [_modsubdir_ipv4/netfilter] Error 2
> | make[1]: Leaving directory `/tmp/KERNEL/linux-2.4.20-pre5/net'
> | make: *** [_mod_net] Error 2
> |-------------------

> CONFIG_IP_NF_CONNTRACK=m
> CONFIG_IP_NF_FTP=m
> CONFIG_IP_NF_IRC=m
> CONFIG_IP_NF_IPTABLES=m

I got the same error. With

CONFIG_IP_NF_MATCH_CONNTRACK=m

(Connection tracking match support), the error disappears.

Regards...
Michael

2003-03-24 14:09:04

by Andreas Metzler

[permalink] [raw]
Subject: Re: [2.4.21-pre5] compile error in ip_conntrack_ftp.c:440:

Michael Mauch <[email protected]> wrote:
> Andreas Metzler <[email protected]> wrote:
>> Since iirc 2.4.20 I get this error when compiling a kernel:
>> |-------------------
>> | make[2]: Entering directory `/tmp/KERNEL/linux-2.4.20-pre5/net/ipv4/netfilter'
>> | make[2]: Circular /tmp/KERNEL/linux-2.4.20-pre5/include/linux/netfilter_ipv4/ip_conntrack_helper.h <- /tmp/KERNEL/linux-2.4.20-pre5/include/linux/netfilter_ipv4/ip_conntrack.h dependency dropped.
>> | ld -m elf_i386 -r -o ip_conntrack.o ip_conntrack_standalone.o ip_conntrack_core.o ip_conntrack_proto_generic.o ip_conntrack_proto_tcp.o ip_conntrack_proto_udp.o ip_conntrack_proto_icmp.o
>> | gcc -D__KERNEL__ -I/tmp/KERNEL/linux-2.4.20-pre5/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -nostdinc -iwithprefix include -DKBUILD_BASENAME=ip_conntrack_ftp -c -o ip_conntrack_ftp.o ip_conntrack_ftp.c
>> | ip_conntrack_ftp.c:440: parse error before `this_object_must_be_defined_as_export_objs_in_the_Makefile'
[...]
>> CONFIG_IP_NF_CONNTRACK=m
>> CONFIG_IP_NF_FTP=m
>> CONFIG_IP_NF_IRC=m
>> CONFIG_IP_NF_IPTABLES=m

> I got the same error. With

> CONFIG_IP_NF_MATCH_CONNTRACK=m

> (Connection tracking match support), the error disappears.

Hello,
This fixes neither the example I posted (add this line to initial
minimal config, make menuconfig, make clean dep, make modules), nor the
real world example

http://www.logic.univie.ac.at/~ametzler/2.4.20.breaks.config
cu andreas

2003-03-24 16:25:55

by Martin Josefsson

[permalink] [raw]
Subject: Re: [2.4.21-pre5] compile error in ip_conntrack_ftp.c:440:

On Mon, 2003-03-24 at 15:18, Andreas Metzler wrote:

> Hello,
> This fixes neither the example I posted (add this line to initial
> minimal config, make menuconfig, make clean dep, make modules), nor the
> real world example
>
> http://www.logic.univie.ac.at/~ametzler/2.4.20.breaks.config

Hi,

I'll take a look at this later today, I think there are more problems
than this in the config-dependencies, I'll go over 2.4 and 2.5 and see
what I find.

--
/Martin

2003-03-31 13:44:07

by Andreas Metzler

[permalink] [raw]
Subject: Re: [2.4.21-pre5] compile error in ip_conntrack_ftp.c:440:

Andreas Metzler wrote:
> Michael Mauch <[email protected]> wrote:
>> Andreas Metzler wrote:
>>> Since iirc 2.4.20 I get this error when compiling a kernel:
>>> |-------------------
>>> | make[2]: Entering directory `/tmp/KERNEL/linux-2.4.20-pre5/net/ipv4/netfilter'
>>> | make[2]: Circular /tmp/KERNEL/linux-2.4.20-pre5/include/linux/netfilter_ipv4/ip_conntrack_helper.h <- /tmp/KERNEL/linux-2.4.20-pre5/include/linux/netfilter_ipv4/ip_conntrack.h dependency dropped.
>>> | ld -m elf_i386 -r -o ip_conntrack.o ip_conntrack_standalone.o ip_conntrack_core.o ip_conntrack_proto_generic.o ip_conntrack_proto_tcp.o ip_conntrack_proto_udp.o ip_conntrack_proto_icmp.o
>>> | gcc -D__KERNEL__ -I/tmp/KERNEL/linux-2.4.20-pre5/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -nostdinc -iwithprefix include -DKBUILD_BASENAME=ip_conntrack_ftp -c -o ip_conntrack_ftp.o ip_conntrack_ftp.c
>>> | ip_conntrack_ftp.c:440: parse error before `this_object_must_be_defined_as_export_objs_in_the_Makefile'
[...]
> This fixes neither the example I posted (add this line to initial
> minimal config, make menuconfig, make clean dep, make modules), nor the
> real world example

> http://www.logic.univie.ac.at/~ametzler/2.4.20.breaks.config
[...]

Still reproducible with 2.4.21-pre6.
cu andreas