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 > [email protected] > > > _______________________________________________ > LTIB home page: http://ltib.org > > Ltib mailing list > [email protected] > https://lists.nongnu.org/mailman/listinfo/ltib > _______________________________________________ LTIB home page: http://ltib.org Ltib mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/ltib
