* [Buildroot] B3+external kernel: not quite sure how to make these pieces fit ...
@ 2015-06-24 19:06 g4 at novadsp.com
2015-06-24 21:05 ` Arnout Vandecappelle
0 siblings, 1 reply; 4+ messages in thread
From: g4 at novadsp.com @ 2015-06-24 19:06 UTC (permalink / raw)
To: buildroot
Want to automate building kernel and filesystem for Beaglebones.
The kernel itself is the mainline 4.x with a set of patches applied from
Robert Nelson's (RCN) GIT repo.
Problem is that there is no mechanism for file system construction/
packaging. Obviously Buildroot to the rescue here.
I thought I'd start by trying to get BR to use the existing external
toolchain - specifying 'toolchain path' as
'~/rcn/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux'
But this fails with 'External toolchain uses the unsuported OABI'. There is
an old reference to this here:
http://git.buildroot.net/buildroot/commit/?id=b2e88073dbf05faa47475bf96d5ccf
8a45906a3c
I don't see any conflict with the target settings. Is there a solution or is
this a more fundamental/complex issue?
This obviously begs the question of how the externally built kernel gets
into the BR mix but I'll leave that for next time.
Thx++
--------------------snip--------------------
Target Architecture (ARM (little endian)) --->
x x
x x Target Binary Format (ELF) --->
x x
x x Target Architecture Variant (cortex-A8) --->
x x
x x Target ABI (EABIhf) --->
x x
x x Floating point strategy (VFPv3-D16) --->
x x
x x ARM instruction set (ARM) --->
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20150624/2eadb813/attachment.html>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] B3+external kernel: not quite sure how to make these pieces fit ...
2015-06-24 19:06 [Buildroot] B3+external kernel: not quite sure how to make these pieces fit g4 at novadsp.com
@ 2015-06-24 21:05 ` Arnout Vandecappelle
2015-06-25 11:08 ` g4 at novadsp.com
0 siblings, 1 reply; 4+ messages in thread
From: Arnout Vandecappelle @ 2015-06-24 21:05 UTC (permalink / raw)
To: buildroot
On 06/24/15 21:06, g4 at novadsp.com wrote:
> Want to automate building kernel and filesystem for Beaglebones.
>
>
>
> The kernel itself is the mainline 4.x with a set of patches applied from Robert
> Nelson?s (RCN) GIT repo.
>
>
>
> Problem is that there is no mechanism for file system construction/ packaging.
> Obviously Buildroot to the rescue here.
>
>
>
> I thought I?d start by trying to get BR to use the existing external toolchain ?
> specifying ?toolchain path? as
> ?~/rcn/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux?
>
>
>
> But this fails with ?External toolchain uses the unsuported OABI?. There is an
> old reference to this here:
> http://git.buildroot.net/buildroot/commit/?id=b2e88073dbf05faa47475bf96d5ccf8a45906a3c
Looks like your external toolchain is not installed correctly. Can you run
~/rcn/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc
-v
Or to be safe, just select the Linaro 2014.09 toolchain as to be downloaded and
installed.
> I don?t see any conflict with the target settings. Is there a solution or is
> this a more fundamental/complex issue?
>
>
>
> This obviously begs the question of how the externally built kernel gets into
> the BR mix but I?ll leave that for next time.
You'll have to run 'make -C <linux_dir> INSTALL_MOD_PATH=$1 modules_install'
from a post-build script. Or else, install the modules in some staging directory
and copy them to the target directory in the post-build script.
Or alternatively, just build it in buildroot with BR2_LINUX_KERNEL_CUSTOM_LOCAL=y.
Regards,
Arnout
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] B3+external kernel: not quite sure how to make these pieces fit ...
2015-06-24 21:05 ` Arnout Vandecappelle
@ 2015-06-25 11:08 ` g4 at novadsp.com
2015-06-25 23:06 ` Arnout Vandecappelle
0 siblings, 1 reply; 4+ messages in thread
From: g4 at novadsp.com @ 2015-06-25 11:08 UTC (permalink / raw)
To: buildroot
Arnout, apologies. Outlook simply replied to you and not the list.
> Looks like your external toolchain is not installed correctly. Can
> you run
> ~/rcn/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-
> gnueabihf-gcc -v
I will bow to superior knowledge here but it does produce a booting,
running, kernel.
-------------------snip-----------------------
~/rcn $
~/rcn/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabi
hf-gcc -v Using built-in specs.
COLLECT_GCC=/home/jevans/rcn/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linu
x/bin/arm-linux-gnueabihf-gcc
COLLECT_LTO_WRAPPER=/home/jevans/rcn/gcc-linaro-arm-linux-gnueabihf-4.9-2014
.09_linux/bin/../libexec/gcc/arm-
linux-gnueabihf/4.9.2/lto-wrapper
Target: arm-linux-gnueabihf
Configured with:
/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/.build/sr
c/gcc-linaro-4.9
-2014.09/configure --build=i686-build_pc-linux-gnu
--host=i686-build_pc-linux-gnu --target=arm-linux-gnueabih f
--prefix=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/
install --with-sysroot=/cbuild/
slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install/arm-linux
-gnueabihf/libc --enable-language s=c,c++,fortran --disable-multilib
--enable-multiarch --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vf
pv3-d16 --with-float=hard --with-pkgversion='crosstool-NG
linaro-1.13.1-4.9-2014.09 - Linaro GCC 4.9-2014.09'
--with-bugurl=https://bugs.launchpad.net/gcc-linaro --enable-__cxa_atexit
--enable-libmudflap --enable-libgo mp --enable-libssp
--with-gmp=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-linu
x/.build/arm-l
inux-gnueabihf/build/static
--with-mpfr=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf-lin
ux/.b
uild/arm-linux-gnueabihf/build/static
--with-mpc=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-gnueabihf
-linux/.build/arm-linux-gnueabihf/build/static
--with-isl=/cbuild/slaves/oorts/crosstool-ng/builds/arm-linux-
gnueabihf-linux/.build/arm-linux-gnueabihf/build/static
--with-cloog=/cbuild/slaves/oorts/crosstool-ng/builds
/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/static
--with-libelf=/cbuild/slaves/oorts/crossto
ol-ng/builds/arm-linux-gnueabihf-linux/.build/arm-linux-gnueabihf/build/stat
ic --enable-threads=posix --disab le-libstdcxx-pch --enable-linker-build-id
--enable-plugin --enable-gold --with-local-prefix=/cbuild/slaves/oo
rts/crosstool-ng/builds/arm-linux-gnueabihf-linux/install/arm-linux-gnueabih
f/libc --enable-c99 --enable-long -long --with-mode=thumb --disable-multilib
--with-float=hard Thread model: posix gcc version 4.9.2 20140904
(prerelease) (crosstool-NG linaro-1.13.1-4.9-2014.09 - Linaro GCC
4.9-2014.09)
>
> Or to be safe, just select the Linaro 2014.09 toolchain as to be
> downloaded and installed.
Yes but working kernel trumps all ...
> You'll have to run 'make -C <linux_dir> INSTALL_MOD_PATH=$1
> modules_install'
> from a post-build script. Or else, install the modules in some staging
> directory and copy them to the target directory in the post-build script.
>
> Or alternatively, just build it in buildroot with
> BR2_LINUX_KERNEL_CUSTOM_LOCAL=y.
This last is promising. So you suggest cloning kernel repo in the buildroot
tree?
Someone else must have had this problem?
Thank you.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] B3+external kernel: not quite sure how to make these pieces fit ...
2015-06-25 11:08 ` g4 at novadsp.com
@ 2015-06-25 23:06 ` Arnout Vandecappelle
0 siblings, 0 replies; 4+ messages in thread
From: Arnout Vandecappelle @ 2015-06-25 23:06 UTC (permalink / raw)
To: buildroot
On 06/25/15 13:08, g4 at novadsp.com wrote:
> Arnout, apologies. Outlook simply replied to you and not the list.
>
>> Looks like your external toolchain is not installed correctly. Can
>> you run
>> ~/rcn/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-
>> gnueabihf-gcc -v
>
> I will bow to superior knowledge here but it does produce a booting,
> running, kernel.
I asked because the error you reported is based on this piece of code:
EXT_TOOLCHAIN_TARGET=`LANG=C $${__CROSS_CC} -v 2>&1 | grep ^Target | cut -f2 -d
' '` ; \
if ! echo $${EXT_TOOLCHAIN_TARGET} | grep -qE 'eabi(hf)?$$' ; then \
echo "External toolchain uses the unsuported OABI" ; \
exit 1 ; \
fi ; \
[snip]
> Target: arm-linux-gnueabihf
... but it does end in eabihf, so why doesn't this condition match?
Could you modify toolchain/helpers.mk to echo the value of EXT_TOOLCHAIN_TARGET
in the command above?
[snip]
>> Or to be safe, just select the Linaro 2014.09 toolchain as to be
>> downloaded and installed.
>
> Yes but working kernel trumps all ...
It is not required to build the kernel with the same toolchain as userspace.
>> You'll have to run 'make -C <linux_dir> INSTALL_MOD_PATH=$1
>> modules_install'
>> from a post-build script. Or else, install the modules in some staging
>> directory and copy them to the target directory in the post-build script.
>>
>> Or alternatively, just build it in buildroot with
>> BR2_LINUX_KERNEL_CUSTOM_LOCAL=y.
>
> This last is promising. So you suggest cloning kernel repo in the buildroot
> tree?
No, I suggest letting buildroot build the kernel using the checked-out kernel
source code you have in another directory. _CUSTOM_LOCAL refers to a source tree.
Regards,
Arnout
>
> Someone else must have had this problem?
>
> Thank you.
>
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
>
>
>
> ************************************************************************************
> This footnote confirms that this email message has been scanned by
> PineApp Mail-SeCure for the presence of malicious code, vandals & computer viruses.
> ************************************************************************************
>
>
>
>
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-06-25 23:06 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-24 19:06 [Buildroot] B3+external kernel: not quite sure how to make these pieces fit g4 at novadsp.com
2015-06-24 21:05 ` Arnout Vandecappelle
2015-06-25 11:08 ` g4 at novadsp.com
2015-06-25 23:06 ` Arnout Vandecappelle
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox