[OE-core] [PATCH] gcc: use ${base_lib} to match gcc default configuration

Yu Ke ke.yu at intel.com
Thu Aug 11 07:45:01 UTC 2011


Ok, CC Richard to see if it is OK to not use 64bithack.patch

Regards
Ke

on 2011-8-11 14:47, Kumar Gala wrote:
> revert this is not acceptable as that will break ppc64 builds.
>
> I think you need to look at 64bithack.patch and if we really should be using it for multilib builds.
>
> - k
>
> On Aug 11, 2011, at 1:36 AM, Yu Ke wrote:
>
>> Hi Kumar,
>>
>> I just found this patch breaks the qemux86-64 lib64 multilib build.
>>
>> the error log is as below:
>>
>> | mv: cannot stat `/home/kyu3/sdb/multilib2/tmp/work/x86_64-pokymllib64-linux/lib64-gcc-cross-intermediate-4.6.1+svnr175454-r4/image/home/kyu3/sdb/multilib2/tmp/sysroots/x86_64-linux/usr/x86_64-pokymllib64-linux/lib64/*': No such file or directory
>> NOTE: package lib64-gcc-cross-intermediate-4.6.1+svnr175454-r4: task do_install: Failed
>> ERROR: Task 1557 (virtual:multilib:lib64:/home/kyu3/src/poky/meta/recipes-devtools/gcc/gcc-cross-intermediate_4.6.bb, do_install) failed with exit code
>>
>> the error is caused by command in gcc-cross-intermediate.inc: do_install(): "mv ${D}${exec_prefix}/${TARGET_SYS}/${baselib}/* ${D}${target_base_libdir}/"
>>
>> and the reason is that: ${baselib} is lib64 in multilib case, while the files to be moved is still in ${D}${exec_prefix}/${TARGET_SYS}/lib/*, so mv will fail.
>>
>> The fix may be either reverting this commit, or putting the file to ${baselib} instead of lib. I'd like to get your input before going further.
>>
>> Regards
>> Ke
>>
>> on 2011-8-5 2:54, Kumar Gala wrote:
>>> Rather than tweaking MULTILIB_DIRNAMES&   MULTILIB_OSDIRNAMES like is
>>> done for x86-64 via 64bithack.patch.  We can just go with gcc defaults
>>> and utilize ${base_lib} for where to find gcc libs.
>>>
>>> Signed-off-by: Kumar Gala<galak at kernel.crashing.org>
>>> ---
>>>   .../gcc/gcc-cross-intermediate.inc                 |    2 +-
>>>   1 files changed, 1 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/meta/recipes-devtools/gcc/gcc-cross-intermediate.inc b/meta/recipes-devtools/gcc/gcc-cross-intermediate.inc
>>> index df5958a..7b1bb38 100644
>>> --- a/meta/recipes-devtools/gcc/gcc-cross-intermediate.inc
>>> +++ b/meta/recipes-devtools/gcc/gcc-cross-intermediate.inc
>>> @@ -34,7 +34,7 @@ do_compile () {
>>>   do_install () {
>>>   	oe_runmake 'DESTDIR=${D}' install
>>>   	install -d ${D}${target_base_libdir}/
>>> -	mv ${D}${exec_prefix}/${TARGET_SYS}/lib/* ${D}${target_base_libdir}/
>>> +	mv ${D}${exec_prefix}/${TARGET_SYS}/${baselib}/* ${D}${target_base_libdir}/
>>>
>>>   	# We don't really need this (here shares/ contains man/, info/, locale/).
>>>   	rm -rf ${D}${datadir}/
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>





More information about the Openembedded-core mailing list