Kernel development setup for XO-1.75 [Devel Digest, Vol 76, Issue 15]

Yioryos Asprobounitis mavrothal at yahoo.com
Thu Jun 7 13:18:14 EDT 2012


> ?- We currently crosscompile our kernels for development
> ?--
> ? ? ?Untar http://dev.laptop.org/~cjb/gcc-4.6.0-from-x86_64-to-armv7.tar.bz2
> to /opt, then
> 
> PATH=$PATH:/opt/crosstool/gcc-4.6.0/bin/
> make ARCH=arm CROSS_COMPILE=armv7-unknown-linux-gnueabi-
> ?<your make
> target here>
> 
> ?- We have an autobuilder that makes nice RPMs of the
> kernels based
> on our git branches. Once you have a well tested patch, spam
> someone
> in our team to get it into the official git repo so that it
> gets into
> our RPM'd kernels...
> 

Thank you for the info.

I tried it on Fedora 14 (that I usually build my XO kernels) 
I downloaded http://dev.laptop.org/~cjb/gcc-4.6.0-from-x86_64-to-armv7.tar.bz2 extracted it in /opt/crosstools (crosstools-ng is _not_ installed) and then from within the freshly cloned olpc-2.6 I did:

`git checkout origin/arm-3.0-wip
export PATH=/opt/crosstool/gcc-4.6.0/bin:$PATH
export ARCH=arm
export CROSS_COMPILE=armv7-unknown-linux-gnueabi-
cp arch/arm/configs/xo_175_defconfig .config
make zImage modules'

and I got: 
`/opt/crosstool/gcc-4.6.0/bin/armv7-unknown-linux-gnueabi-gcc: /opt/crosstool/gcc-4.6.0/bin/armv7-unknown-linux-gnueabi-gcc: cannot execute binary file'

Trying to:
`exec /opt/crosstool/gcc-4.6.0/bin/armv7-unknown-linux-gnueabi-gcc'

I get: 
`bash: /opt/crosstool/gcc-4.6.0/bin/armv7-unknown-linux-gnueabi-gcc: cannot execute binary file
bash: /opt/crosstool/gcc-4.6.0/bin/armv7-unknown-linux-gnueabi-gcc: Success'

Does gcc-4.6.0-from-x86_64-to-armv7 has any other dependencies?
`file armv7-unknown-linux-gnueabi-gcc'  for example, says:
`ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped'
Are the shared libraries the ones in the tarball?

Is it known to run OK on F14?

Finally, all this is running on a 64bit machine (Intel 2x E8135) and although from a VM the CPU is seen correctly as a 64bit CPU. However, Fedora 14 is the i686 and not the x86_64.
Could this also be an issue, ie Fedora _not_ being x86_64?

Thanks for any pointers



More information about the Devel mailing list