ltib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Ltib] where is the '-mcpu' type specified? -> linux kernel build wa


From: Lambrecht Jürgen
Subject: Re: [Ltib] where is the '-mcpu' type specified? -> linux kernel build warning
Date: Mon, 28 Nov 2011 09:53:58 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.13) Gecko/20101208 Lightning/1.0b2 Thunderbird/3.1.7

On 11/24/2011 08:14 PM, Peter Barada wrote:
>
> On 11/24/2011 10:27 AM, Lambrecht Jürgen wrote:
> > I have a strange error during the kernel build (see below): aparently,
> > the architecture is not specified ?? (see "-march=" below)
> > Where is the 'arch' type specified for the kernel in ltib?
> > (In my platform main.lkc, LINTARCH=arm. So that is OK.)
> Look in the kernel source, specificially arch/arm/Makefile - depending
> on the version you'll see KBUILD_CFLAGS define dusing $(arch-y) and
> $(tune-y) which are set based on CONFIG_CPU_XXX being set.
>
It uses
   arch-$(CONFIG_CPU_32v5)        :=-D__LINUX_ARM_ARCH__=5 $(call 
cc-option,-march=armv5te,-march=armv4t)

> You might want to also build your kernel, then look for the line "+ make
> ARCH=arm 'HOSTCC=ccache /usr/bin/gcc -B/usr/bin//' uImage" that builds
> uImage.  Open up another shell, then execute "./ltib -m shell" and cd
> into your kernel build directory (rpm/build/kernel-xxx usually), and
> execute the make target that build uImage.  However add "V=1" after the
> make; this causes the build to show you the compiler command line so you
> can see the -mcpu= and -march= selections your kernel is making.
> Remember to exit this new shell, or "ltib" will fail to build (due to
> .lock_file existing).
>
In that ltib shell, I can see it is correct (it contains 
"-march=armv5te"), so the kernel is build with the correct options:

make -f /usr/src/cross/Linux-svn/scripts/Makefile.build obj=. 
missing-syscalls
   /bin/bash /usr/src/cross/Linux-svn/scripts/checksyscalls.sh gcc 
-Wp,-MD,./.missing-syscalls.d  -nostdinc -isystem 
/opt/freescale/usr/local/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/lib/gcc/arm-none-linux-gnueabi/4.1.2/include
 
-I/usr/src/cross/Linux-svn/arch/arm/include -Iarch/arm/include/generated 
-Iinclude  -I/usr/src/cross/Linux-svn/include -include 
include/generated/autoconf.h  -I/usr/src/cross/Linux-svn/. -I. 
-D__KERNEL__ -mlittle-endian   
-I/usr/src/cross/Linux-svn/arch/arm/mach-imx/include   
-I/usr/src/cross/Linux-svn/arch/arm/plat-mxc/include -Wall -Wundef 
-Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common 
-Werror-implicit-function-declaration -Wno-format-security 
-fno-delete-null-pointer-checks -Os -marm -fno-omit-frame-pointer -mapcs 
-mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork 
-D__LINUX_ARM_ARCH__=5 -march=armv5te -mtune=arm9tdmi -msoft-float -Uarm 
-fno-stack-protector -fno-omit-frame-pointer -fno-optimize-sibling-calls 
-Wdeclaration-after-statement -Wno-pointer-sign    -D"KBUILD_STR(s)=#s" 
-D"KBUILD_BASENAME=KBUILD_STR(missing_syscalls)"  
-D"KBUILD_MODNAME=KBUILD_STR(missing_syscalls)"

But this is the next line:

:0: warning: switch -mcpu=arm926ej-s conflicts with -march= switch

That "-mcpu=arm926ej-s" comes from the ltib build options 
(CONFIG_TOOLCHAIN_CFLAGS), but I don't know where the "-march=" comes from??
In the ltib build options, I also specify "-march=armv5te" now, but it 
did not help..

Kind regards,
Jürgen
>
>
> Hope this helps.
>
> --
> Peter Barada
> address@hidden
>
>
> _______________________________________________
> LTIB home page: http://ltib.org
>
> Ltib mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/ltib
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]