[Buildroot] ARCH not being sent by make menuconfig - kernel compile fails to start

William Pettersson enigma at strudel-hound.com
Thu Jul 19 03:55:55 UTC 2007



William Pettersson wrote:
> 
> 
> William Pettersson wrote:
>> First off, sorry for the cross-post.  I posted this to the busybox
>> mailing list first, instead of the buildroot list.  My bad there, but
>> since that was completely the wrong mailing list, I'm posting it here.
> 
> 
>> So, I'm trying to set up a buildroot image for a soekris net4801.  I ran
>> make menuconfig, Target Architecture is set to "i386", Target
>> Architecture Variant is set to "geode".
> 
>> However, when I run "make", I get the following
>> (cd /home/wpettersson/src/buildroot/build_/linux-2.6.21.5 ; \
>>          /usr/bin/make -j1 ARCH= CC="/usr/bin/gcc" \
> 
>> INSTALL_HDR_PATH=/home/wpettersson/src/buildroot/toolchain_build_/linux
>> headers_install ; \
>>         )
>> make[1]: Entering directory
>> `/home/wpettersson/src/buildroot/build_/linux-2.6.21.5'
>> Makefile:491:
>> /home/wpettersson/src/buildroot/build_/linux-2.6.21.5/arch//Makefile: No
>> such file or directory
>> make[1]: *** No rule to make target
>> `/home/wpettersson/src/buildroot/build_/linux-2.6.21.5/arch//Makefile'.
>>  Stop.
>> make[1]: Leaving directory
>> `/home/wpettersson/src/buildroot/build_/linux-2.6.21.5'
>> make: ***
>> [/home/wpettersson/src/buildroot/toolchain_build_/linux/.configured] Error 2
> 
>> From the looks of it, "ARCH" isn't being set, which stuffs things up.
>> I've tested by running the make command manually, with ARCH=i386, and
>> that seemed to work.
> 
>> I wasn't sure which configuration files would be required, so to save
>> space I didn't include any.  If any are wanted, I'll gladly post them.
> 
>> Anyone know where ARCH is meant to be set?
> 
> Ok, I've investigated some more.  If the Target Architecture Variant is
> set to "i386", I get the following
> 
> wpettersson ~/buildroot/package/config/buildroot-config $ grep i386 *
> auto.conf:BR2_i386=y
> auto.conf:BR2_ARCH="i386"
> auto.conf:BR2_x86_i386=y
> auto.conf:BR2_GCC_TARGET_ARCH="i386"
> auto.conf:BR2_GCC_TARGET_TUNE="i386"
> autoconf.h:#define BR2_i386 1
> autoconf.h:#define BR2_ARCH "i386"
> autoconf.h:#define BR2_x86_i386 1
> autoconf.h:#define BR2_GCC_TARGET_ARCH "i386"
> autoconf.h:#define BR2_GCC_TARGET_TUNE "i386"
> 
> However, if I set Target Architecture Variant to "geode", I get
> wpettersson ~/buildroot/package/config/buildroot-config $ grep geode *
> auto.conf:BR2_x86_geode=y
> auto.conf:BR2_GCC_TARGET_ARCH="geode"
> auto.conf:BR2_GCC_TARGET_TUNE="geode"
> autoconf.h:#define BR2_x86_geode 1
> autoconf.h:#define BR2_GCC_TARGET_ARCH "geode"
> autoconf.h:#define BR2_GCC_TARGET_TUNE "geode"
> 
> 
> So selecting "geode" means that BR2_ARCH doesn't get set.  I'm still
> trying to dig through the code, but am I heading in the right direction
> with this?
> 
> 

Ok, I've attached a patch which might fix this.  Config.in doesn't set
BR2_ARCH at all for geode, so I patched it to set BR2_ARCH to "i586".
Now I'm just trying to work out why gcc-4.2.0 has issues with
./configure and --with-arch=geode.

Will
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Config.in.patch
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20070719/5d4cdc25/attachment.ksh>


More information about the buildroot mailing list