chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] Chicken integration into OpenEmbedded


From: Otavio Salvador
Subject: Re: [Chicken-users] Chicken integration into OpenEmbedded
Date: Tue, 14 Jun 2011 16:16:51 +0000

On Tue, Jun 14, 2011 at 15:26, Felix
<address@hidden> wrote:
>>> The PROGRAM_PREFIX setting also applies to the library name, so
>>> PROGRAM_PREFIX=foo will install the chicken library as
>>> ".../lib/lib<PROGRAM_PREFIX>chicken.so[.6]".  This is intended to
>>> allow multiple chicken installations in the same prefix. But (as I
>>> assume) since you install the chicken run-time parts on the target
>>> system without prefix, this will not match the host system. You show
>>> me here that this is not totally correct when building a
>>> cross-chicken...
>>
>> I think that TARGET_LIB_NAME shouldn't default to PROGRAM_PREFIX
>> mangled one. The built library will really have the prefix but this
>> doesn't mean I want to link against that library. In fact, when using
>> -target I do want to link against another library and not the cross
>> one.
>
> Yes, applying PROGRAM_PREFIX is probably wrong. But you want to link
> in "-target" mode with the native libchicken.so, which will be used
> on the target (that is, the one native to the target system), right?

For OE and as far as I know for most toolchain documents native means
the binary to run on host. So I am using "-target" to instruct cross
chicken toolchain to link against target (binary thar will run on
target) library.

>> The last remaining issue now is to be able to run native code during
>> the build process. Currently we have:
>>
>> * chicken-cross: this has been installed with PROGRAM_PREFIX and it works 
>> fine;
>> * chicken-native and chicken-egg-*-native: the native build tools
>> don't have the PROGRAM_PREFIX set;
>>
>> Basically this end up with the following layout:
>>
>>  sysroot/var/lib/${TARGET}-chicken/6/ (chicken-cross)
>>
>> and
>>
>>   sysroot/var/lib/chicken/6/ (chicken-native)
>>
>> Thus, the native eggs gets installed into var/lib/chicken/6/ however
>> chicken-cross cannot find them when trying to run native code during
>> the build process.
>>
>> Any idea how to fix it?
>
> I'm not sure I've understood, but if you want the cross-chicken to use
> native eggs (that run on the build platform, which I call "host", but
> the terminology is not consistent), then you should install eggs with
> the "-host" option.

Yes, I want to use native eggs (what you can host).

The problem is that I do have chicken-native and this is used to build
the binaries to be used by host. So the eggs end being installed into
/var/lib/chicken/6/ but has the binary format to be run on host (in my
case amd64).

I therefore cannot build them with the cross chicken but want it to be
able to load the native ones.

-- 
Otavio Salvador                             O.S. Systems
E-mail: address@hidden http://www.ossystems.com.br
Mobile: +55 53 9981-7854              http://projetos.ossystems.com.br



reply via email to

[Prev in Thread] Current Thread [Next in Thread]