[OE-core] [PATCHv4] git: fix perl binding installation
Koen Kooi
koen at dominion.thruhere.net
Fri May 9 09:16:42 UTC 2014
Op 9 mei 2014, om 10:50 heeft Koen Kooi <koen at dominion.thruhere.net> het volgende geschreven:
>
> Op 9 mei 2014, om 08:38 heeft Saul Wold <sgw at linux.intel.com> het volgende geschreven:
>
>> On 05/08/2014 10:59 PM, Koen Kooi wrote:
>>>
>>> Op 8 mei 2014, om 19:30 heeft Koen Kooi <koen at dominion.thruhere.net> het volgende geschreven:
>>>
>>>>
>>>> Op 8 mei 2014, om 18:37 heeft Saul Wold <sgw at linux.intel.com> het volgende geschreven:
>>>>
>>>>> On 05/02/2014 01:36 AM, Koen Kooi wrote:
>>>>>> Git.pm wasn't ending up in the package because do_install removed it
>>>>>> with a misleading comment about multilib. Workaround the problem so
>>>>>> that Git.pm ends up in the correct dir *and* doesn't get deleted.
>>>>>>
>>>>>
>>>>> Seems to be a problem as RP was concerned with:
>>>>>
>>>>>
>>>>>> /srv/ssd/builds/world/tmp/sysroots/x86_64-linux/usr/bin/git difftool
>>>>>> Can't locate Error.pm in @INC (@INC contains: /srv/ssd/builds/world/tmp/sysroots/x86_64-linux/usr/lib/perl-native/perl/5.14.3 /srv/ssd/builds/world/tmp/sysroots/x86_64-linux/usr/lib/perl-native/perl//5.14.3 /srv/ssd/builds/world/tmp/sysroots/x86_64-linux/usr/lib/perl-native/perl/ /srv/ssd/machines/meta-intel-iot-devkit/build/tmp/sysroots/x86_64-linux/usr/lib/perl-native/perl/5.14.3 .) at /srv/ssd/builds/world/tmp/sysroots/x86_64-linux/usr/lib/git/git-core/git-difftool line 17.
>>>>>> BEGIN failed--compilation aborted at /srv/ssd/builds/world/tmp/sysroots/x86_64-linux/usr/lib/git/git-core/git-difftool line 17.
>>>>>
>>>>> Doing a find in my sysroot:
>>>>>
>>>>> /srv/ssd/builds/world/tmp/sysroots/x86_64-linux/usr/lib/perl-native/perl/5.14.3/CPANPLUS/Error.pm
>>>>> /srv/ssd/builds/world/tmp/sysroots/x86_64-linux/usr/lib/perl/5.14.3/Error.pm
>>>>
>>>> Drat, I checked for buildpaths and didn't find anything. I'll retest and send a new version hopefully tomorrow.
>>>
>>> I need to read errors better :) Do you have http://patches.openembedded.org/patch/70635/ applied? And did 'difftool' work before this? None of the perl tools worked for me due to error.pm missing.
>>>
>> Apparently not, this must have gotten lost during the release crazies.
>>
>> Can you please resend a rebased patch set against master with both of these tested using the ' target.
>
> What is 'git-replacement-native' and how do I test it?
OK, I figured it out, I remove TMPDIR and sstate-cache, then did:
bitbake git-replacement-native
bitbake linaro-image-minimal
That blew up with:
RROR: Function failed: Fetcher failure: Fetch command failed with exit code 128, output:
Cloning into '/build/linaro/build/build/tmp-eglibc/work/x86_64-linux/prelink-native/1.0+gitAUTOINC+6822ec76aa-r0/git'...
git-upload-pack: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
ERROR: Logfile of failure stored in: /build/linaro/build/build/tmp-eglibc/work/x86_64-linux/prelink-native/1.0+gitAUTOINC+6822ec76aa-r0/temp/log.do_unpack.23257
Log data follows:
| DEBUG: Executing python function do_unpack
| DEBUG: Executing python function base_do_unpack
| DEBUG: Running export PATH="/build/linaro/build/openembedded-core/scripts/native-intercept:/build/linaro/build/openembedded-core/scripts:/build/linaro/build/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin/x86_64-linux:/build/linaro/build
ld/linaro/build/build/tmp-eglibc/sysroots/x86_64-linux/sbin:/build/linaro/build/build/tmp-eglibc/sysroots/x86_64-linux/bin:/build/linaro/build/openembedded-core/scripts:/build/linaro/build/openembedded-core/bitbake/bin:/usr/lib64/qt-3.3/b
-s -n /build/linaro/build/build/downloads/git2/git.yoctoproject.org.prelink-cross.git/ /build/linaro/build/build/tmp-eglibc/work/x86_64-linux/prelink-native/1.0+gitAUTOINC+6822ec76aa-r0/git/
| DEBUG: Python function base_do_unpack finished
| DEBUG: Python function do_unpack finished
| ERROR: Function failed: Fetcher failure: Fetch command failed with exit code 128, output:
| Cloning into '/build/linaro/build/build/tmp-eglibc/work/x86_64-linux/prelink-native/1.0+gitAUTOINC+6822ec76aa-r0/git'...
| git-upload-pack: error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory
| fatal: Could not read from remote repository.
|
| Please make sure you have the correct access rights
| and the repository exists.
|
ERROR: Task 117 (virtual:native:/build/linaro/build/openembedded-core/meta/recipes-devtools/prelink/prelink_git.bb, do_unpack) failed with exit code '1'
NOTE: Tasks Summary: Attempted 265 tasks of which 124 didn't need to be rerun and 1 failed.
Waiting for 0 running tasks to finish:
Summary: 1 task failed:
virtual:native:/build/linaro/build/openembedded-core/meta/recipes-devtools/prelink/prelink_git.bb, do_unpack
Summary: There were 3 WARNING messages shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
real 4m49.390s
user 8m30.627s
sys 1m37.368s
Libcrypto does seem to be in sysroot:
[koen at thinkpad build]$ find build/ -name "libcrypto.so.1.0.0"
build/tmp-eglibc/sysroots/x86_64-linux/lib/libcrypto.so.1.0.0
I don't think this is due to my perl changes, though.
regards,
Koen
>
> regards,
>
> Koen
>
>>
>> Thanks
>> Sau!
>>
>>>
>>>>
>>>> regards,
>>>>
>>>> Koen
>>>>
>>>>>
>>>>> Sau!
>>>>>
>>>>>
>>>>>> Signed-off-by: Koen Kooi <koen.kooi at linaro.org>
>>>>>> ---
>>>>>> meta/recipes-devtools/git/git.inc | 7 ++++++-
>>>>>> 1 file changed, 6 insertions(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc
>>>>>> index 73e11eb..178b768 100644
>>>>>> --- a/meta/recipes-devtools/git/git.inc
>>>>>> +++ b/meta/recipes-devtools/git/git.inc
>>>>>> @@ -28,10 +28,14 @@ do_install () {
>>>>>> template_dir=${datadir}/git-core/templates \
>>>>>> GIT_PYTHON_DIR=${D}${datadir}/git-core/python
>>>>>>
>>>>>> + cd ${B}/perl && oe_runmake install DESTDIR="${D}" bindir=${bindir}
>>>>>> +
>>>>>> # ${libdir} is not applicable here, perl-native files are always
>>>>>> # installed to /usr/lib on both 32/64 bits targets.
>>>>>> + # Fix up build paths and point to target locations.
>>>>>> + mv ${D}${exec_prefix}/lib/perl-native/perl ${D}${exec_prefix}/lib/perl
>>>>>> + sed -i -e s:${D}::g ${D}${exec_prefix}/lib/perl/*/auto/Git/.packlist
>>>>>> rm -rf ${D}${exec_prefix}/lib/perl-native
>>>>>> - rmdir ${D}${exec_prefix}/lib || true
>>>>>> }
>>>>>>
>>>>>> PERLSEDFIXUP = " \
>>>>>> @@ -75,6 +79,7 @@ PERLTOOLS = " \
>>>>>> PACKAGES =+ "${PN}-perltools"
>>>>>> FILES_${PN}-perltools += " \
>>>>>> ${PERLTOOLS} \
>>>>>> + ${prefix}/lib/perl \
>>>>>> ${datadir}/perl \
>>>>>> "
>>>>>> RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path liberror-perl findutils"
More information about the Openembedded-core
mailing list