Modify

Opened 9 years ago

Closed 9 years ago

#4419 closed defect (fixed)

brcm47xx r13858: package iptables does not compile

Reported by: anonymous Owned by: developers
Priority: normal Milestone:
Component: packages Version:
Keywords: Cc:

Description

make[3]: Entering directory `/home/cb/openwrt/trunk/package/iptables'
mkdir -p /home/cb/openwrt/trunk/build_dir/linux-brcm47xx/iptables-1.4.1.1/ipkg-install
make -C /home/cb/openwrt/trunk/build_dir/linux-brcm47xx/iptables-1.4.1.1 AR=mipsel-linux-uclibc-ar AS="ccache mipsel-linux-uclibc-gcc -c -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts" LD=mipsel-linux-uclibc-ld NM=mipsel-linux-uclibc-nm CC="ccache mipsel-linux-uclibc-gcc" GCC="ccache mipsel-linux-uclibc-gcc" CXX="mipsel-linux-uclibc-g++" RANLIB=mipsel-linux-uclibc-ranlib STRIP=mipsel-linux-uclibc-strip OBJCOPY=mipsel-linux-uclibc-objcopy OBJDUMP=mipsel-linux-uclibc-objdump SIZE=mipsel-linux-uclibc-size COPT_FLAGS="-Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts -fpic" LDFLAGS="-rdynamic -static-libgcc" KERNEL_DIR="/home/cb/openwrt/trunk/build_dir/linux-brcm47xx/linux-2.6.25.20" PREFIX=/usr KBUILD_OUTPUT="/home/cb/openwrt/trunk/build_dir/linux-brcm47xx/linux-2.6.25.20" DESTDIR="/home/cb/openwrt/trunk/build_dir/linux-brcm47xx/iptables-1.4.1.1/ipkg-install" all install
make[4]: Entering directory `/home/cb/openwrt/trunk/build_dir/linux-brcm47xx/iptables-1.4.1.1'
make  all-recursive
make[5]: Entering directory `/home/cb/openwrt/trunk/build_dir/linux-brcm47xx/iptables-1.4.1.1'
Making all in extensions
make[6]: Entering directory `/home/cb/openwrt/trunk/build_dir/linux-brcm47xx/iptables-1.4.1.1/extensions'
ccache mipsel-linux-uclibc-gcc -Wp,-MMD,./.libxt_CHAOS.oo.d,-MT,libxt_CHAOS.oo -D_LARGEFILE_SOURCE=1 -D_LARGE_FILES -D_FILE_OFFSET_BITS=64         -D_REENTRANT -Wall -Waggregate-return -Wmissing-declarations    -Wmissing-prototypes -Wredundant-decls -Wshadow -Wstrict-prototypes        -Winline -pipe  -DXTABLES_LIBDIR=\"/usr/lib/iptables\" -DXTABLES_INTERNAL -I../include -I../include  -D_INIT=libxt_CHAOS_init -DPIC -fPIC -Os -pipe -mips32 -mtune=mips32 -funit-at-a-time -fhonour-copts -fpic  -o libxt_CHAOS.oo -c libxt_CHAOS.c;
libxt_CHAOS.c:17:38: warning: linux/netfilter/xt_CHAOS.h: No such file or directory
libxt_CHAOS.c: In function `chaos_tg_parse':
libxt_CHAOS.c:46: error: dereferencing pointer to incomplete type
libxt_CHAOS.c:46: error: `XTCHAOS_DELUDE' undeclared (first use in this function)
libxt_CHAOS.c:46: error: (Each undeclared identifier is reported only once
libxt_CHAOS.c:46: error: for each function it appears in.)
libxt_CHAOS.c:50: error: dereferencing pointer to incomplete type
libxt_CHAOS.c:50: error: `XTCHAOS_TARPIT' undeclared (first use in this function)
libxt_CHAOS.c: In function `chaos_tg_print':
libxt_CHAOS.c:71: error: dereferencing pointer to incomplete type
libxt_CHAOS.c:72: error: `XTCHAOS_DELUDE' undeclared (first use in this function)
libxt_CHAOS.c:75: error: `XTCHAOS_TARPIT' undeclared (first use in this function)
libxt_CHAOS.c: In function `chaos_tg_save':
libxt_CHAOS.c:85: error: dereferencing pointer to incomplete type
libxt_CHAOS.c:86: error: `XTCHAOS_DELUDE' undeclared (first use in this function)
libxt_CHAOS.c:89: error: `XTCHAOS_TARPIT' undeclared (first use in this function)
libxt_CHAOS.c: At top level:
libxt_CHAOS.c:100: error: invalid application of `sizeof' to incomplete type `xt_chaos_target_info'
libxt_CHAOS.c:101: error: invalid application of `sizeof' to incomplete type `xt_chaos_target_info'
make[6]: *** [libxt_CHAOS.oo] Error 1

xt_CHAOS.h is probably missing in package/iptables/patches/1.4.1.1/006-chaostables_0.8.patch

Attachments (0)

Change History (7)

comment:1 Changed 9 years ago by anonymous

same for xt_portscan.h as well as
xt_layer7.h (002-layer7_2.17.patch) ?

comment:2 in reply to: ↑ description Changed 9 years ago by anonymous

Replying to anonymous:

xt_CHAOS.h is probably missing in package/iptables/patches/1.4.1.1/006-
chaostables_0.8.patch

No, it is in for example target/linux/generic-2.6/patches-2.6.28/170-netfilter_chaostables_0.8.patch. Don't know why it is not getting applied.

comment:3 Changed 9 years ago by marcus+wrt@…

It looks like the quilt patching does not always work. When building brcm47xx from trunk, I can see that it imports the patches into quilt, applies the patches, then removes then again and somehow they end up not being used. The compilation then fails when iptables depends on a missing kernel header file (xt_CHAOS.h).

Note this part of the kernel build and the errors from "find":

Importing patch 500-lzma_initramfs.patch (stored as platform/500-lzma_initramfs.patch)                  
Importing patch 601-mips-remove-pci-collision-check.patch (stored as platform/601-mips-remove-pci-collision-check.patch)                                                                                        
Importing patch 700-ssb-gigabit-ethernet-driver.patch (stored as platform/700-ssb-gigabit-ethernet-driver.patch)                                                                                                
Importing patch 800-fix_cfe_detection.patch (stored as platform/800-fix_cfe_detection.patch)            
touch /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.quilt_used                            
touch /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.prepared                              
Sorting patches in generic/                                                                             
find: `generic//*': No such file or directory                                                           
Sorting patches in platform/                                                                            
find: `platform//*': No such file or directory                                                          
touch /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.quilt_patched                         
if [ -s "/home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/patches/series" ]; then (cd /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28; quilt next >/dev/null 2>&1 && quilt push -a || quilt top >/dev/null 2>&1); fi                                                                               
touch /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.quilt_checked                         
/home/marcus/openwrt/scripts/kconfig.pl + /home/marcus/openwrt/target/linux/generic-2.6/config-2.6.28 /home/marcus/openwrt/target/linux/brcm47xx/config-2.6.28 > /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.config.target                                                                              
/home/marcus/openwrt/scripts/metadata.pl kconfig /home/marcus/openwrt/tmp/.packageinfo /home/marcus/openwrt/.config > /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.config.override               
/home/marcus/openwrt/scripts/kconfig.pl 'm+' /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.config.target /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.config.override > /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.config                                                 
mv /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.config /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.config.old                                                                    
grep -v INITRAMFS /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.config.old > /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.config                                                   
echo 'CONFIG_INITRAMFS_SOURCE=""' >> /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28/.config 
export MAKEFLAGS= ;make -C /home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28 CROSS_COMPILE="mipsel-openwrt-linux-uclibc-" ARCH="mips" KBUILD_HAVE_NLS=no CONFIG_SHELL="/bin/bash" CC="ccache mipsel-openwrt-linux-uclibc-gcc" oldconfig prepare scripts                                                        
make[5]: Entering directory `/home/marcus/openwrt/build_dir/linux-brcm47xx/linux-2.6.28'                

comment:4 Changed 9 years ago by anonymous

Hi,

I get the same but with linux/netfilter/xt_layer7.h missing:

libxt_layer7.c:25:39: warning: linux/netfilter/xt_layer7.h: No such file or directory
libxt_layer7.c:48: warning: 'struct xt_layer7_info' declared inside parameter list
libxt_layer7.c:48: warning: its scope is only this definition or declaration, which is probably not what you want
libxt_layer7.c: In function 'parse_protocol_file':
libxt_layer7.c:92: error: 'MAX_PROTOCOL_LEN' undeclared (first use in this function)
libxt_layer7.c:92: error: (Each undeclared identifier is reported only once
libxt_layer7.c:92: error: for each function it appears in.)
libxt_layer7.c:95: error: dereferencing pointer to incomplete type
libxt_layer7.c:101: error: 'MAX_PATTERN_LEN' undeclared (first use in this function)
libxt_layer7.c:103: error: dereferencing pointer to incomplete type
libxt_layer7.c: At top level:
libxt_layer7.c:249: warning: 'struct xt_layer7_info' declared inside parameter list
...

comment:5 follow-up: Changed 9 years ago by hauke

Do you still have this problems with recent trunk?

comment:6 in reply to: ↑ 5 Changed 9 years ago by marcus+wrt@…

Replying to hauke:

Do you still have this problems with recent trunk?

I'm not the original reporter, but I no longer see this bug.

comment:7 Changed 9 years ago by hauke

  • Resolution set to fixed
  • Status changed from new to closed

Fixed now.

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.