[okl4-developer] Hello world on arm926ejs....
Hugues Balp
hugues.balp at thalesgroup.com
Thu Nov 13 04:28:02 EST 2008
Hello everybody,
I first want to thank you for the good job that has been made around the
OKL4 micro-kernel.
I' ve just registered to this mailing list after having downloaded OKL4
v3.0 and
performed some installations and tests with the hello world example for
arm926ejs targets...
Nevertheless I encountered a number of problems during installation and
compilation phases....
So I have now a number of questions and hope you will help me to
understand what happens
on my system...
The first target I wanted to test is called versatile ( with an
arm926ejs processor ).
So following the instructions of the OKL4 wiki, either in Prerequisite
page as in the one
dedicated to the release 3.0, I have downloaded first the precompiled
SDK for arm926ejs
target so as the arm-linux crosstool proposed in URL
http://www.ertos.nicta.com.au/downloads/tools/arm-linux-3.4.4.tar.gz
After some installation steps I got the following error when trying to
compile as follow
the singlecell example delivered within the sdk:
cd $OKL4_SDK_ROOT/okl4/arm926ejs/examples/singlecell
make clean
make
The complete listing of the error is joined to this mail.
The error deals with* internal relocation errors* due to
incompatibilities between binary libraries *ABI versions* as described below
"ERROR: build.micro-debug/src/hello.o is compiled for EABI version 0,
whereas build.micro-debug/bin/hello is compiled for version 4"
What is amazing is to observe that ABI versions differ within the
supplied precompiled sdk-arm926ejs itself, as illustrated by the
following commands:
cd $OKL4_SDK_ROOT
find . -name "*.o" -exec ls {} \; -exec readelf -h {} \; | egrep
"Flags|arm926ejs"
./kernel/arm926ejs/micro-debug/object/arm926ejs.o
Flags: 0x200, GNU EABI, software FP
./kernel/arm926ejs/micro-debug/object/versatile.o
Flags: 0x200, GNU EABI, software FP
./kernel/arm926ejs/micro-debug_no_console/object/arm926ejs.o
Flags: 0x200, GNU EABI, software FP
./kernel/arm926ejs/micro-debug_no_console/object/versatile.o
Flags: 0x200, GNU EABI, software FP
./kernel/arm926ejs/micro-benchmark/object/arm926ejs.o
Flags: 0x200, GNU EABI, software FP
./kernel/arm926ejs/micro-benchmark/object/versatile.o
Flags: 0x200, GNU EABI, software FP
./kernel/arm926ejs/micro-production/object/arm926ejs.o
Flags: 0x200, GNU EABI, software FP
./kernel/arm926ejs/micro-production/object/versatile.o
Flags: 0x200, GNU EABI, software FP
./kernel/arm926ejs/micro-tracebuffers/object/arm926ejs.o
Flags: 0x200, GNU EABI, software FP
./kernel/arm926ejs/micro-tracebuffers/object/versatile.o
Flags: 0x200, GNU EABI, software FP
./okl4/arm926ejs/micro-debug/libs/crt0.o
Flags: 0x4000000, Version4 EABI
./okl4/arm926ejs/examples/singlecell/hello/build.micro-debug/src/hello.o
Flags: 0x200, GNU EABI, software FP
./okl4/arm926ejs/micro-production/libs/crt0.o
Flags: 0x4000000, Version4 EABI
./okl4/arm926ejs/nano-production/libs/crt0.o
Flags: 0x4000000, Version4 EABI
./okl4/arm926ejs/nano-debug/libs/crt0.o
Flags: 0x4000000, Version4 EABI
Another thing that I don't understand in the above error message comes
from the fact that
the file build.micro-debug/src/hello.o is really a binary object file,
as illustrated by the following "file" command output: ELF 32-bit
LSB relocatable, ARM, version 1, not stripped
whereas the item build.micro-debug/bin/hello isn't really a file.
Indeed the only file that resides in directory
$OKL4_SDK_ROOT/okl4/arm926ejs/examples/singlecell/hello/build.micro-debug/bin
is an XML file named hello.xml.
So I imagine there is a binary file generated from this XML file ? I
that true ?....
Another thing to add is that the error is the same either when I use the
arm-linux toolchain referenced in the OKL4 wiki Prerequisite page
or with a self compiled crosstool chain with support for eabi ( as
documented in the mailin-list archive ).
You can also refer to the joined configuration file of this toolchain.
To sum up I am just wondering me how I can get rid of this problem ?
I will send to you later other questions around the compilation of OKL4
itself and its required crosstool chains....
Thanks in advance for your help,
Hugues Balp.
______________________________________________________________________________________________________________
work: Hugues.Balp at thalesgroup.com
home: Hugues.Balp at free.fr
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: mail1.join1.txt
Url: http://lists.okl4.org/pipermail/developer/attachments/20081112/39d3031e/attachment.txt
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: arm-unknown-linux-gnueabi.crosstoolconfig.txt
Url: http://lists.okl4.org/pipermail/developer/attachments/20081112/39d3031e/attachment-0001.txt
More information about the Developer
mailing list