[Suggestion] ARM: allmodconfig: about cross compiling failure under i386 ubuntu.
Russell King - ARM Linux
linux at arm.linux.org.uk
Thu Aug 22 06:22:10 EDT 2013
On Thu, Aug 22, 2013 at 12:45:24AM -0700, Tony Lindgren wrote:
> * Chen Gang <gang.chen at asianux.com> [130821 01:53]:
> > Hello Maintainers:
> >
> > When build arm with allmodconfig under ubuntu i386 with arm-linux-
> > gnueabi-gcc 4.7, as 2.22, it report the errors.
> >
> > Please help check, thanks (the related config file in attachment).
>
> It seems that some make flags may need to be specified separately
> in some makefiles. See the following for some examples:
>
> $ find arch/arm -name Makefile | xargs grep -i flags
>
> I'm getting different errors though, I'm getting:
>
> arch/arm/mach-zynq/hotplug.c:1: error: bad value (cortex-a9) for -mcpu= switch
>
> As probably my compiler does not support the cortex-a9 switch,
> I have gcc version 4.3.5 (Debian 4.3.5-4), tried with v3.11-rc5.
The use of -mcpu with -march is not a good idea anyway - you either use
-mcpu= or you use -march and -mtune.
-mcpu= sets the CPU type, which specifies the instruction architecture
(iow, which instructions can be used) and instruction scheduling behaviour.
-march= sets the architecture only. -mtune= sets the instruction
scheduling behaviour only.
So, that -mcpu= should probably be -mtune=, but if that fails due to
unrecognised instructions, the -march= parameter is wrong.
Even so, if gcc 4.3.5 doesn't support cortex-a9 as a CPU type, and we
want to support that gcc version, the setting of -mtune needs to be
conditionalised. As it is only a scheduling hint, it's probably fine
for it to end up being omitted.
More information about the linux-arm-kernel
mailing list