Modify

Opened 4 years ago

Last modified 4 years ago

#15210 new defect

Build of mac80211 in trunk (since r36939 an onwards) fails on Scientific Linux 6.4 64-bit, GCC 4.7.2/4.4.7

Reported by: glenten Owned by: developers
Priority: normal Milestone: Attitude Adjustment 12.09.1
Component: kernel Version: Trunk
Keywords: mac80211, Scientific Linux, 64-bit, Red Hat, CentOS Cc:

Description

I'm seeking to build on our university servers.

I verified that I could successfully build a recent version of trunk on an old Debian 7.3 32-bit laptop with gcc version "Debian 4.7.2-5".
On the university servers I can successfully build trunk revision up until r36938 but for r36939 it fails consistently when it reaches mac80211.

The build server it fails on;

-bash-4.1$ cat /etc/system-release
Scientific Linux release 6.4 (Carbon)

-bash-4.1$ uname -a
Linux n-62-12-2 2.6.32-431.1.2.el6.x86_64 #1 SMP Thu Dec 12 13:59:19 CST 2013 x86_64 x86_64 x86_64 GNU/Linux

I can flip between two versions of GCC, for which I have tried both (separate clean checkouts).

-bash-4.1$ gcc -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC)


-bash-4.1$ module load gcc
Loaded module: gcc/4.7.2-cloog

-bash-4.1$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/gcc/gcc-4.7.2-cloog/libexec/gcc/x86_64-unknown-linux-gnu/4.7.2/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ./configure --with-gmp=/opt/gcc/gmp-5.1.0 --with-mpfr=/opt/gcc/mpfr-3.1.1 --with-mpc=/opt/gcc/mpc-1.0.1 --with-isl=/opt/gcc/isl-0.11.1 --with-cloog=/opt/gcc/cloog-0.18.0 --enable-languages=c,c++,fortran --disable-multilib --enable-cloog-backend --with-ppl=/opt/gcc/ppl-0.11 --with-clog-ppl=/opt/gcc/cloog-ppl-0.15.11 --prefix=/opt/gcc/gcc-4.7.2-cloog
Thread model: posix
gcc version 4.7.2 (GCC)

Build output r36939 (GCC 4.7.2):

make[3]: Entering directory `/tmp/openwrt/openwrt-trunk-gcc47_r36939/package/mac80211'
WARNING: skipping kmod-adm8211 -- package not selected
cmp /tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2013-06-13/include/linux/ath9k_platform.h /tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.8.13/include/linux/ath9k_platform.h
cmp /tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2013-06-13/include/linux/ath5k_platform.h /tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.8.13/include/linux/ath5k_platform.h
cmp /tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2013-06-13/include/linux/rt2x00_platform.h /tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.8.13/include/linux/rt2x00_platform.h
. /tmp/openwrt/openwrt-trunk-gcc47_r36939/include/shell.sh; var2file "V_mac80211_config" /tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2013-06-13/.config
make -C "/tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2013-06-13" CROSS_COMPILE="mips-openwrt-linux-uclibc-" ARCH="mips" EXTRA_CFLAGS="-I/tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2013-06-13/include" KLIB_BUILD="/tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.8.13" MODPROBE=true KLIB=/lib/modules/3.8.13 KERNEL_SUBLEVEL=8 KBUILD_LDFLAGS_MODULE_PREREQ= allnoconfig
make[4]: Entering directory `/tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2013-06-13'
make[5]: `Kconfig.versions' is up to date.
cc -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -DKBUILD_NO_NLS   -c -o conf.o conf.c
cc: -W option with unknown program all
make[6]: *** [conf.o] Error 1
make[5]: *** [allnoconfig] Error 2
make[4]: *** [allnoconfig] Error 2
make[4]: Leaving directory `/tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2013-06-13'
make[3]: *** [/tmp/openwrt/openwrt-trunk-gcc47_r36939/build_dir/target-mips_r2_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2013-06-13/.configured_ynnnnnnnnnnnnnnnnnnnnnnnnnnnyynynnnnnnnnnnnnnnyynnnnn] Error 2
make[3]: Leaving directory `/tmp/openwrt/openwrt-trunk-gcc47_r36939/package/mac80211'
make[2]: *** [package/mac80211/compile] Error 2
make[2]: Leaving directory `/tmp/openwrt/openwrt-trunk-gcc47_r36939'
make[1]: *** [/tmp/openwrt/openwrt-trunk-gcc47_r36939/staging_dir/target-mips_r2_uClibc-0.9.33.2/stamp/.package_compile] Error 2
make[1]: Leaving directory `/tmp/openwrt/openwrt-trunk-gcc47_r36939'
make: *** [world] Error 2

Build output r39865 (GCC 4.7.2):

make[3]: Entering directory `/tmp/openwrt/openwrt-trunk-gcc47_r39865/package/kernel/mac80211'
WARNING: skipping kmod-adm8211 -- package not selected
. /tmp/openwrt/openwrt-trunk-gcc47_r39865/include/shell.sh; var2file "V_mac80211_config" /tmp/openwrt/openwrt-trunk-gcc47_r39865/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2014-01-23.1/.config
make -C "/tmp/openwrt/openwrt-trunk-gcc47_r39865/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2014-01-23.1" CROSS_COMPILE="mips-openwrt-linux-uclibc-" ARCH="mips" EXTRA_CFLAGS="-I/tmp/openwrt/openwrt-trunk-gcc47_r39865/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2014-01-23.1/include" KLIB_BUILD="/tmp/openwrt/openwrt-trunk-gcc47_r39865/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/linux-3.10.32" MODPROBE=true KLIB=/lib/modules/3.10.32 KERNEL_SUBLEVEL=10 KBUILD_LDFLAGS_MODULE_PREREQ= allnoconfig
make[4]: Entering directory `/tmp/openwrt/openwrt-trunk-gcc47_r39865/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2014-01-23.1'
make[5]: `Kconfig.versions' is up to date.
cc -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -DKBUILD_NO_NLS   -c -o conf.o conf.c
cc: -W option with unknown program all
make[6]: *** [conf.o] Error 1
make[5]: *** [allnoconfig] Error 2
make[4]: *** [allnoconfig] Error 2
make[4]: Leaving directory `/tmp/openwrt/openwrt-trunk-gcc47_r39865/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2014-01-23.1'
make[3]: *** [/tmp/openwrt/openwrt-trunk-gcc47_r39865/build_dir/target-mips_34kc_uClibc-0.9.33.2/linux-ar71xx_generic/compat-wireless-2014-01-23.1/.built] Error 2
make[3]: Leaving directory `/tmp/openwrt/openwrt-trunk-gcc47_r39865/package/kernel/mac80211'
make[2]: *** [package/kernel/mac80211/compile] Error 2
make[2]: Leaving directory `/tmp/openwrt/openwrt-trunk-gcc47_r39865'
make[1]: *** [/tmp/openwrt/openwrt-trunk-gcc47_r39865/staging_dir/target-mips_34kc_uClibc-0.9.33.2/stamp/.package_compile] Error 2
make[1]: Leaving directory `/tmp/openwrt/openwrt-trunk-gcc47_r39865'
make: *** [world] Error 2

No changes made via menuconfig except choosing target profile;
TP-LINK TL-WDR3500/3600/4300/4310/MW4350R (ar71xx)
(Did select kmod-adm8211 at one point - identical output besides the warning line)

Please let me know which other informations I should supply, thanks!

Attachments (0)

Change History (5)

comment:1 follow-up: Changed 4 years ago by nbd

What kind of compiler do you have under the name "cc"? It doesn't seem to behave like a normal gcc

comment:2 in reply to: ↑ 1 Changed 4 years ago by glenten

Replying to nbd:

What kind of compiler do you have under the name "cc"? It doesn't seem to behave like a normal gcc

-bash-4.1$ which cc
/opt/oracle/solstudiodev/bin/cc
-bash-4.1$ cc -V
cc: Sun C 5.12 Linux_i386 Spica 2011/07/21
-bash-4.1$ gcc -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC)
-bash-4.1$ which gcc
/usr/bin/gcc
-bash-4.1$ which cc
/opt/oracle/solstudiodev/bin/cc
-bash-4.1$ cc -V
cc: Sun C 5.12 Linux_i386 Spica 2011/07/21
-bash-4.1$ ls -la `which cc`
lrwxrwxrwx 1 root root 14 Jan 31 18:25 /opt/oracle/solstudiodev/bin/cc -> ../prod/bin/cc
-bash-4.1$ ls -ls /opt/oracle/solstudiodev/prod/bin/cc
648 -rwxr-xr-x 1 root root 655457 Jul 21  2011 /opt/oracle/solstudiodev/prod/bin/cc
-bash-4.1$
-bash-4.1$
-bash-4.1$
-bash-4.1$ module load gcc
Loaded module: gcc/4.7.2-cloog
-bash-4.1$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/gcc/gcc-4.7.2-cloog/libexec/gcc/x86_64-unknown-linux-gnu/4.7.2/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ./configure --with-gmp=/opt/gcc/gmp-5.1.0 --with-mpfr=/opt/gcc/mpfr-3.1.1 --with-mpc=/opt/gcc/mpc-1.0.1 --with-isl=/opt/gcc/isl-0.11.1 --with-cloog=/opt/gcc/cloog-0.18.0 --enable-languages=c,c++,fortran --disable-multilib --enable-cloog-backend --with-ppl=/opt/gcc/ppl-0.11 --with-clog-ppl=/opt/gcc/cloog-ppl-0.15.11 --prefix=/opt/gcc/gcc-4.7.2-cloog
Thread model: posix
gcc version 4.7.2 (GCC)
-bash-4.1$ which gcc
/opt/gcc/gcc-4.7.2-cloog/bin/gcc
-bash-4.1$ which cc
/opt/oracle/solstudiodev/bin/cc
-bash-4.1$ cc -V
cc: Sun C 5.12 Linux_i386 Spica 2011/07/21
-bash-4.1$ ls -la `which cc`
lrwxrwxrwx 1 root root 14 Jan 31 18:25 /opt/oracle/solstudiodev/bin/cc -> ../prod/bin/cc
-bash-4.1$ ls -ls /opt/oracle/solstudiodev/prod/bin/cc
648 -rwxr-xr-x 1 root root 655457 Jul 21  2011 /opt/oracle/solstudiodev/prod/bin/cc

comment:3 follow-up: Changed 4 years ago by nbd

I'd suggest you adjust your PATH to prefer gcc's cc over the sun compiler.

comment:4 in reply to: ↑ 3 Changed 4 years ago by glenten

Replying to nbd:

I'd suggest you adjust your PATH to prefer gcc's cc over the sun compiler.

Thanks nbd! I will do that and give it a go later today/tomorrow and post how it turns out.

comment:5 Changed 4 years ago by glenten

Thanks nbd!
and sorry for my late feedback.
It builds perfectly when I point cc to gcc through PATH. I must admit it didn't cross my mind that gcc wasn't the C compiler that got invoked. Even more so because I was "loading" gcc. Still learning :- )

Out of interest,
Is it "supposed" to work with other C compilers besides GCC?
Since the OpenWrt makefiles / build system doesn't set gcc specifically.

Is there any policy regarding which version of GCC that are used for released binaries including ImageBuilder and what the main OpenWrt developers use?
(In order to use the same)

Add Comment

Modify Ticket

Action
as new .
Author


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

 
Note: See TracTickets for help on using tickets.