On 15.1.2014 05:18, Rusty Russell wrote: > Michal Marek <mmarek@xxxxxxx> writes: >> On 3.1.2014 18:10, Michal Marek wrote: >>> On 2013-12-10 08:13, Rusty Russell wrote: >>>> Without it we get ugly warnings (though build still succeeds). >>>> >>>> $ make -j8 CC="gcc -m32" >>>> In file included from <command-line>:0:0: >>>> /usr/include/stdc-predef.h:30:26: fatal error: bits/predefs.h: No such file or directory >>>> #include <bits/predefs.h> >>>> ^ >>>> compilation terminated. >>>> In file included from <command-line>:0:0: >>>> /usr/include/stdc-predef.h:30:26: fatal error: bits/predefs.h: No such file or directory >>>> #include <bits/predefs.h> >>>> ^ >>>> compilation terminated. >>>> /home/rusty/devel/kernel/linux/scripts/gcc-version.sh: line 31: printf: #: invalid number >>>> /home/rusty/devel/kernel/linux/scripts/gcc-version.sh: line 31: printf: #: invalid number >>>> /bin/sh: 1: [: 0001: unexpected operator >>>> CHK include/config/kernel.release >>>> CHK include/generated/uapi/linux/version.h >>>> make[1]: Nothing to be done for `all'. >>>> ... >>>> >>>> Signed-off-by: Rusty Russell <rusty@xxxxxxxxxxxxxxx> >>>> >>>> diff --git a/scripts/gcc-version.sh b/scripts/gcc-version.sh >>>> index 7f2126df91f2..d48b0cbaf246 100644 >>>> --- a/scripts/gcc-version.sh >>>> +++ b/scripts/gcc-version.sh >>>> @@ -14,7 +14,7 @@ if [ "$1" = "-p" ] ; then >>>> shift; >>>> fi >>>> >>>> -compiler="$*" >>>> +compiler="$1" >>> >>> But this will break things like CC="ccache gcc". Your problem is that >>> you do not have the 32bit glibc headers, right? >> >> BTW, what is the usecase for CC="gcc -m32"? AFAICS, at least x86 and >> powerpc do this for you when building a 32bit kernel. > > No, without -m32 I get: > > $ make > make[1]: Nothing to be done for `all'. > make[1]: Nothing to be done for `relocs'. > CHK include/config/kernel.release > CHK include/generated/uapi/linux/version.h > CHK include/generated/utsrelease.h > CC kernel/bounds.s > gcc: warning: ‘-mcpu=’ is deprecated; use ‘-mtune=’ or ‘-march=’ instead > gcc: warning: ‘-mcpu=’ is deprecated; use ‘-mtune=’ or ‘-march=’ instead > kernel/bounds.c:1:0: error: CPU you selected does not support x86-64 instruction set > /* > ^ > kernel/bounds.c:1:0: warning: -mregparm is ignored in 64-bit mode [enabled by default] > make[1]: *** [kernel/bounds.s] Error 1 > make: *** [prepare0] Error 2 > > If that's *supposed* to work, then the bug is elsewhere. It is supposed to work, but I have no idea what's going on here. Please provide output of $ uname -m $ gcc -v $ make V=1 $ cat .config and we will see. Michal -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html