[okl4-developer] How to compile the OK Linux root file system ?\
Geoffrey Lee
glee at ok-labs.com
Thu Nov 20 09:28:58 EST 2008
On Wed, Nov 19, 2008 at 04:38:01PM +0100, Hugues Balp wrote:
>
> Thanks for your remark ,
>
> In fact I have also tried with other tool chains:
>
> 1) with a gcc-3.4.5-glibc-2.3.6.arm-softfloat-linux toolchain which
> doesn't support eabi and nptl
> and I got the same error on rootfs-2.6.24-v2....
The kernel needs to be compiled with the old non EABI toolchain,
while the rest of userland needs to be compiled with the
EABI toolchain.
To do that you state TOOLCHAIN=gnu_arm_eabi_toolchain
pistachio.TOOLCHAIN=gnu_arm_toolchain.
-gl
>
> It was not possible to patch it with glibc-port-2.3.6 because the arm
> and nptl support was not included
> in such old glibc-port version...
>
> 2) I have also tried to apply a patch on crosstool-0.34 from montavista
> to compile a gcc-4.1.1-glibc-2.5 gnueabi + nptl arm tool chain but
> without success.
> ( here is the URL of this patch:
> http://sources.redhat.com/ml/crossgcc/2006-12/msg00076.html )
>
> 3) with a gcc-4.2.4-glibc-2.7 gnueabi + nptl arm toolchain
>
> but some warning stop the compilation in case the option -Werror is used
> with arm-...-gcc.
>
> when I comment this option, several warning are raised such as
>
> pistachio/src/interrupt.cc:217: warning: type-punning to incomplete type
> might break strict-aliasing rules
> arch/arm/pistachio/kdb/tlb.cc:325: warning: deprecated conversion from
> string constant to 'char*'
> build/pistachio/include/kernel/kdb/console.h:98: warning: conflicting
> types for built-in function 'putc'
>
> and the compilation process stops with the following error:
>
> /opt/crosstool/gcc-4.2.4-glibc-2.7/arm-unknown-linux-gnueabi/bin/../lib/gcc/arm-unknown-linux-gnueabi/4.2.4/libgcc.a(_dvmd_lnx.o):
> In function `__div0':
> /scratch/philipo/crosstool-0.43/src/gcc-4.2.4/gcc/config/arm/lib1funcs.asm:1000:
> undefined reference to `raise'
> /opt/crosstool/gcc-4.2.4-glibc-2.7/arm-unknown-linux-gnueabi/bin/../lib/gcc/arm-unknown-linux-gnueabi/4.2.4/libgcc.a(_divdi3.o):(.ARM.exidx+0x0):
> undefined reference to `__aeabi_unwind_cpp_pr0'
> /opt/crosstool/gcc-4.2.4-glibc-2.7/arm-unknown-linux-gnueabi/bin/../lib/gcc/arm-unknown-linux-gnueabi/4.2.4/libgcc.a(_udivdi3.o):(.ARM.exidx+0x0):
> undefined reference to `__aeabi_unwind_cpp_pr0'
> scons: *** [build/pistachio/bin/l4kernel] Error 1
> scons: building terminated because of errors.
>
> Can you please explicit to me the toolchain we have to use to be able to
> run the POSIX test suite ?
> Do you use another process to build the crosstool chain ?
>
> Thanks in advance for your answer,
>
> Hugues Balp.
>
> Geoffrey Lee wrote:
>> On Tue, Nov 18, 2008 at 10:59:23PM +0100, Hugues Balp wrote:
>>
>>> Dear all,
>>>
>>> I try to build the test suite related to the OKLinux POSIX support
>>> located in repository $OKL4_ROOT_DIR/libs/posix/test.
>>>
>>> The build command I use is the following:
>>>
>>> "tools/build.py machine=versatile project=linux test_libs=posix
>>> wombat=true kdb_serial=True"
>>>
>>> where the gnu_arm_linux crosstool chain points to
>>> /opt/crosstool/gcc-3.4.5-glibc-2.3.6/arm-softfloat-linux-gnu.
>>>
>>
>> You are building with the wrong toolchain. The Linux userland that
>> is shipped requires an EABI toolchain with an EABI-enabled glibc
>> and dynamic loader.
>>
>> -gl
>>> The beginning of the compilation process is ok but an error occur
>>> when scons looks for the foolowing shared library:
>>>
>>> scons: building `build/linux/install/lib/ld-linux.so.3' because it
>>> doesn't exist
>>> scons: *** Source `linux/rootfs-2.6.24-v2/ld-linux.so.3' not found,
>>> needed by target `build/linux/install/lib/ld-linux.so.3'. Stop.
>>> scons: building terminated because of errors.
>>>
>>> I tried to compile the oklinux root file system separately with the
>>> SConscript included inside the repository linux/rootfs-2.6.24-v2
>>> but it requires an SConsctruct file to work properly and I don't see it...
>>>
>>> Do you have any idea of what is happening ?
>>>
>>> Best regards,
>>>
>>> Hugues Balp.
>>>
>>>
>>> _______________________________________________
>>> Developer mailing list
>>> Developer at okl4.org
>>> https://lists.okl4.org/mailman/listinfo/developer
>>>
>>>
>>
>>
>
>
--
More information about the Developer
mailing list