[yocto] 答复: 答复: Fetcher failure for URL

Zoran Stojsavljevic zoran.stojsavljevic at gmail.com
Wed Dec 27 23:10:46 PST 2017


> I think i got the root cause that in my environment "https protocol"
> does not link to git-remote-https tool , I edit my bash profile file in\
> ~/.bash_profile : "PATH=$PATH:/usr/lib/git-core"  where the
> git-remote-https installed. and the issue is resolved completely.

Interesting... ?! I use Fedora 27 as a host, and git-core/ is not in
my PATH variable either.

[user at localhost bin]$ uname -r
4.14.8-300.fc27.x86_64
[user at localhost bin]$ echo $PATH
/usr/libexec/python2-sphinx:/usr/lib64/qt-3.3/bin:/usr/lib64/ccache:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/user/.local/bin:/home/user/bin
[user at localhost usr]$ find . -name git-remote-https
./libexec/git-core/git-remote-https
[user at localhost usr]$ which git-remote-https
/usr/bin/which: no git-remote-https in
(/usr/libexec/python2-sphinx:/usr/lib64/qt-3.3/bin:/usr/lib64/ccache:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/user/.local/bin:/home/user/bin)
[user at localhost usr]$

But for me initial method works.

Anyway, thank you for sharing your solution (one more thing to consider).

Zoran
_______

On Thu, Dec 28, 2017 at 6:15 AM, Hou, Yong <Yong_Hou at mentor.com> wrote:
> I think i got the root cause that in my environment " https protocol" does not link to git-remote-https tool , I edit my bash profile file in ~/.bash_profile :
> "PATH=$PATH:/usr/lib/git-core"  where the git-remote-https installed.
> and the issue is resolved completely.
>
> so the conclusion is:  the git tool environment shall be prepared properly in order to fetch code based https protocol.
>
> regards
> Yong
>
> ________________________________________
> 发件人: Zoran Stojsavljevic <zoran.stojsavljevic at gmail.com>
> 发送时间: 2017年12月28日 12:38
> 收件人: Hou, Yong
> 抄送: yocto at yoctoproject.org
> 主题: Re: 答复: [yocto] Fetcher failure for URL
>
>> I suspect  error may be caused by the "protocol=https",  then I changed to
>> "git://github.com/GENIVI/dlt-daemon.git;branch=master"...
>
> Good observation. I use clones as close as to the latest HEAD (span
> from few days to several weeks).
>
> Which does not explain what are the differences between poky distro
> 2.0.2 (used by you) and latest 2.4. In most cases, developers are
> using much more stable releases. So this mystery is still unsolved.
> With respect to the Real World out there.
>
> Zoran
>
> On Thu, Dec 28, 2017 at 4:13 AM, Hou, Yong <Yong_Hou at mentor.com> wrote:
>> hello Zoran,
>>
>> thanks for your reply. I tried with your bb file, but there is still same problem.
>> I suspect  error may be caused by the "protocol=https",  then I changed to
>> "git://github.com/GENIVI/dlt-daemon.git;branch=master" ,
>> Fortunately there is no problem any more . Following is the result by using this change:
>> But i do not know the real root cause, if some one can let me understand it it will be very nice.
>>
>> Myproject/build/tmp/work/corei7-64-poky-linux/dlt-daemon/2.15.0-r0/git$ ls -al
>> total 156
>> drwxr-xr-x 14 yong yong  4096 12月 28 10:55 .
>> drwxrwxr-x 13 yong yong  4096 12月 28 10:56 ..
>> -rw-r--r--  1 yong yong   555 12月 28 10:55 AUTHORS
>> -rw-r--r--  1 yong yong   209 12月 28 10:55 automotive-dlt-c++.pc.in
>> -rw-r--r--  1 yong yong   789 12月 28 10:55 automotive-dlt.pc.in
>> -rw-r--r--  1 yong yong  3694 12月 28 10:55 automotive-dlt.spec.in
>> drwxr-xr-x  2 yong yong  4096 12月 28 10:55 cmake
>> -rw-r--r--  1 yong yong 10593 12月 28 10:55 CMakeLists.txt
>> -rw-r--r--  1 yong yong   460 12月 28 10:55 COPYING
>> -rw-r--r--  1 yong yong   426 12月 28 10:55 distfiles
>> drwxr-xr-x  3 yong yong  4096 12月 28 10:55 doc
>> drwxr-xr-x  6 yong yong  4096 12月 28 10:55 examples
>> drwxr-xr-x  8 yong yong  4096 12月 28 10:55 .git
>> -rw-r--r--  1 yong yong   127 12月 28 10:55 .gitignore
>> drwxr-xr-x 16 yong yong  4096 12月 28 10:55 gtest-1.7.0
>> drwxr-xr-x  3 yong yong  4096 12月 28 10:55 include
>> -rw-r--r--  1 yong yong  7441 12月 28 10:55 INSTALL
>> -rw-r--r--  3 yong yong 16726 12月 28 10:55 LICENSE
>> drwxrwxr-x  2 yong yong  4096 12月 28 10:55 patches
>> drwxrwxr-x  9 yong yong  4096 12月 28 10:55 .pc
>> -rw-r--r--  1 yong yong  2629 12月 28 10:55 README
>> -rw-r--r--  1 yong yong 27180 12月 28 10:55 ReleaseNotes.txt
>> drwxr-xr-x 15 yong yong  4096 12月 28 10:55 src
>> drwxr-xr-x  3 yong yong  4096 12月 28 10:55 systemd
>> drwxr-xr-x  3 yong yong  4096 12月 28 10:55 tests
>> drwxr-xr-x  4 yong yong  4096 12月 28 10:55 testscripts
>>
>> ________________________________________
>> 发件人: Zoran Stojsavljevic <zoran.stojsavljevic at gmail.com>
>> 发送时间: 2017年12月26日 16:50
>> 收件人: Hou, Yong
>> 抄送: yocto at yoctoproject.org
>> 主题: Re: [yocto] Fetcher failure for URL
>>
>>> Inside the bb file, there are following descriptions for this URL:
>>>
>>> SRC_URI = "git://github.com/GENIVI/dlt-daemon.git;protocol=https"
>>> SRCREV = "e9a486a08fff6d3cc7133a350cec3ee10f463207"
>>
>> Interesting problem, for the sake of expertise/exercise I wanted to
>> reproduce it in poky/referent YOCTO Project distro.
>>
>> So I did create the dlp-daemon entry in my meta-mylayer, added layer
>> on the top of poky 3 layers for such of the experiment:
>>
>> user at localhost recipes-example]$ pwd
>> /home/user/YOCTO/oe_core_embedded/poky/meta-mylayer/recipes-example
>> [user at localhost recipes-example]$ ls -al
>> total 16
>> drwxrwxr-x. 4 user user 4096 Dec 26 08:55 .
>> drwxrwxr-x. 4 user user 4096 Nov 19 13:15 ..
>> drwxrwxr-x. 2 user user 4096 Dec 26 08:59 dlt-daemon
>> drwxrwxr-x. 3 user user 4096 Dec 26 07:37 script
>> [user at localhost recipes-example]$ cd dlt-daemon/
>> [user at localhost dlt-daemon]$ ls -al
>> total 16
>> drwxrwxr-x. 2 user user 4096 Dec 26 08:59 .
>> drwxrwxr-x. 4 user user 4096 Dec 26 08:55 ..
>> -rw-rw-r--. 1 user user 1370 Dec 26 08:59 dlt-daemon_2.15.0.bb
>> [user at localhost dlt-daemon]$
>>
>> The bb recipe I took from:
>> http://git.yoctoproject.org/cgit/cgit.cgi/meta-ivi/tree/meta-ivi/recipes-extended/dlt-daemon/dlt-daemon_2.15.0.bb?h=master
>>
>> And I did modify it, in order for disable some inheritance I do not
>> have. Concisely I know it will not configure, but the aim was just to
>> see if I can
>> download it via bitbake script.
>>
>> With the following in my modified recipe:
>>
>> HOMEPAGE = "https://www.genivi.org/"
>> SECTION = "console/utils"
>> LICENSE = "MPLv2"
>> LIC_FILES_CHKSUM = "file://LICENSE;md5=8184208060df880fe3137b93eb88aeea"
>>
>> DEPENDS = "dbus zlib"
>>
>> SRCREV = "e9a486a08fff6d3cc7133a350cec3ee10f463207"
>> SRC_URI = "git://github.com/GENIVI/${BPN}.git;protocol=https"
>> S = "${WORKDIR}/git"
>>
>> ## inherit gzipnative autotools gettext cmake systemd
>> inherit autotools gettext cmake systemd
>>
>> PACKAGES += "${PN}-systemd"
>> SYSTEMD_PACKAGES = "${PN} ${PN}-systemd"
>> SYSTEMD_SERVICE_${PN} = "dlt-system.service dlt.service"
>> SYSTEMD_AUTO_ENABLE_${PN} = "enable"
>> SYSTEMD_SERVICE_${PN}-systemd = "dlt-example-user.service \
>>     dlt-dbus.service \
>>     dlt-adaptor-udp.service \
>>     dlt-receive.service"
>> SYSTEMD_AUTO_ENABLE_${PN}-systemd = "disable"
>>
>> EXTRA_OECMAKE = "-DWITH_SYSTEMD=ON"
>>
>> FILES_${PN}-doc += "/usr/share/dlt-filetransfer"
>>
>> do_install_append() {
>>    rm -f ${D}${bindir}/dlt-test-*
>> }
>>
>> It did indeed downloaded (CLI follows below as proof), but failed to
>> configure (understandable, gzipnative does not exist in reference
>> poky):
>>
>> [user at localhost 2.15.0-r0]$ pwd
>> /home/user/YOCTO/oe_core_embedded/poky/build/tmp/work/core2-64-poky-linux/dlt-daemon/2.15.0-r0
>> [user at localhost 2.15.0-r0]$ cd git
>> [user at localhost git]$ ls -al
>> total 148
>> drwxr-xr-x. 12 user user  4096 Dec 26 09:00 .
>> drwxrwxr-x. 11 user user  4096 Dec 26 09:04 ..
>> -rw-r--r--.  1 user user   555 Dec 26 09:00 AUTHORS
>> -rw-r--r--.  1 user user   209 Dec 26 09:00 automotive-dlt-c++.pc.in
>> -rw-r--r--.  1 user user   789 Dec 26 09:00 automotive-dlt.pc.in
>> -rw-r--r--.  1 user user  3694 Dec 26 09:00 automotive-dlt.spec.in
>> drwxr-xr-x.  2 user user  4096 Dec 26 09:00 cmake
>> -rw-r--r--.  1 user user 10616 Dec 26 09:00 CMakeLists.txt
>> -rw-r--r--.  1 user user   460 Dec 26 09:00 COPYING
>> -rw-r--r--.  1 user user   426 Dec 26 09:00 distfiles
>> drwxr-xr-x.  3 user user  4096 Dec 26 09:00 doc
>> drwxr-xr-x.  6 user user  4096 Dec 26 09:00 examples
>> drwxr-xr-x.  8 user user  4096 Dec 26 09:00 .git
>> -rw-r--r--.  1 user user   127 Dec 26 09:00 .gitignore
>> drwxr-xr-x. 16 user user  4096 Dec 26 09:00 gtest-1.7.0
>> drwxr-xr-x.  3 user user  4096 Dec 26 09:00 include
>> -rw-r--r--.  1 user user  7441 Dec 26 09:00 INSTALL
>> -rw-r--r--.  3 user user 16726 Dec 26 09:00 LICENSE
>> -rw-r--r--.  1 user user  2629 Dec 26 09:00 README
>> -rw-r--r--.  1 user user 27180 Dec 26 09:00 ReleaseNotes.txt
>> drwxr-xr-x. 15 user user  4096 Dec 26 09:00 src
>> drwxr-xr-x.  3 user user  4096 Dec 26 09:00 systemd
>> drwxr-xr-x.  3 user user  4096 Dec 26 09:00 tests
>> drwxr-xr-x.  4 user user  4096 Dec 26 09:00 testscripts
>> [user at localhost git]$
>>
>> The download problem become visible with the original master recipe:
>>
>> SRCREV = "e9a486a08fff6d3cc7133a350cec3ee10f463207"
>> SRC_URI = "git://github.com/GENIVI/${BPN}.git;protocol=https \
>>     file://0002-Don-t-execute-processes-as-a-specific-user.patch \
>>     file://0004-Modify-systemd-config-directory.patch \
>>     "
>> S = "${WORKDIR}/git"
>>
>> Patch 0002 did not download. The same as you had for the original URI,
>> but, in my case, it was just a 0002. ... .patch.
>>
>> Hope this helps.
>>
>> Zoran
>>
>> On Tue, Dec 26, 2017 at 4:42 AM, Hou, Yong <Yong_Hou at mentor.com> wrote:
>>> Hello all,
>>>
>>>
>>> When i build the project based on yocto 2.0.2 using bitbake tool, i
>>> encountered one fetch error :
>>>
>>>  "Failed to fetch URL git://github.com/GENIVI/dlt-daemon.git;protocol=https,
>>> attempting MIRRORS if available"
>>>
>>>
>>> Inside the bb file, there are following descriptions for this URL:
>>>
>>> SRC_URI = "git://github.com/GENIVI/dlt-daemon.git;protocol=https"
>>> SRCREV = "e9a486a08fff6d3cc7133a350cec3ee10f463207"
>>>
>>>
>>> Then i tried to fetch it manually as below, source code can be downloaded
>>> successfully and commit id is also correct.
>>> myproject$git clone git://github.com/GENIVI/dlt-daemon.git
>>>
>>> myproject/dlt-daemon$ git -c core.fsyncobjectfiles=0 branch --contains
>>> e9a486a08fff6d3cc7133a350cec3ee10f463207
>>> * master
>>>
>>>
>>> I have no idea why such issue occurred for this URL when i use bitbake for
>>> build.
>>>
>>> Thanks for help.
>>>
>>>
>>> Following is the detail error log:
>>>
>>>
>>> NOTE: recipe gnome-common-native-3.14.0-r0: task do_compile: Started
>>> NOTE: recipe gnome-common-native-3.14.0-r0: task do_compile: Succeeded
>>> NOTE: Running task 687 of 5699 (ID: 5344,
>>> virtual:native:/home/yong/MEL/android/Oreo/2017ww45/VM0/Xen_GVTG_EC1746_RC1-DOM0/poky/meta/recipes-gnome/gnome/gnome-common_3.14.0.bb,
>>> do_install)
>>> NOTE: recipe gnome-common-native-3.14.0-r0: task do_install: Started
>>> NOTE: recipe gnome-common-native-3.14.0-r0: task do_install: Succeeded
>>> NOTE: Running task 688 of 5699 (ID: 5345,
>>> virtual:native:/home/yong/MEL/android/Oreo/2017ww45/VM0/Xen_GVTG_EC1746_RC1-DOM0/poky/meta/recipes-gnome/gnome/gnome-common_3.14.0.bb,
>>> do_populate_sysroot)
>>> NOTE: recipe gnome-common-native-3.14.0-r0: task do_populate_sysroot:
>>> Started
>>> NOTE: recipe gnome-common-native-3.14.0-r0: task do_populate_sysroot:
>>> Succeeded
>>> NOTE: Running task 689 of 5699 (ID: 569,
>>> /home/yong/MEL/android/Oreo/2017ww45/VM0/Xen_GVTG_EC1746_RC1-DOM0/poky/../meta-ias-ivi-adapt/recipes-extended/dlt-daemon/dlt-daemon_2.15.0.bb,
>>> do_fetch)
>>> NOTE: recipe dlt-daemon-2.15.0-r0: task do_fetch: Started
>>> WARNING: Failed to fetch URL
>>> git://github.com/GENIVI/dlt-daemon.git;protocol=https, attempting MIRRORS if
>>> available
>>> ERROR: Fetcher failure: Fetch command failed with exit code 128, output:
>>> Cloning into bare repository
>>> '/home/yong/MEL/android/Oreo/2017ww45/VM0/Xen_GVTG_EC1746_RC1-DOM0/build/downloads/git2/github.com.GENIVI.dlt-daemon.git'...
>>> fatal: Unable to find remote helper for 'https'
>>>
>>> ERROR: Function failed: Fetcher failure for URL:
>>> 'git://github.com/GENIVI/dlt-daemon.git;protocol=https'. Unable to fetch URL
>>> from any source.
>>> ERROR: Logfile of failure stored in:
>>> /home/yong/MEL/android/Oreo/2017ww45/VM0/Xen_GVTG_EC1746_RC1-DOM0/build/tmp/work/corei7-64-poky-linux/dlt-daemon/2.15.0-r0/temp/log.do_fetch.14762
>>> NOTE: recipe dlt-daemon-2.15.0-r0: task do_fetch: Failed
>>> ERROR: Task 569
>>> (/home/yong/MEL/android/Oreo/2017ww45/VM0/Xen_GVTG_EC1746_RC1-DOM0/poky/../meta-ias-ivi-adapt/recipes-extended/dlt-daemon/dlt-daemon_2.15.0.bb,
>>> do_fetch) failed with exit code '1'
>>> NOTE: Running task 690 of 5699 (ID: 3025,
>>> /home/yong/MEL/android/Oreo/2017ww45/VM0/Xen_GVTG_EC1746_RC1-DOM0/poky/meta/recipes-devtools/cmake/cmake-native_3.3.1.bb,
>>> do_fetch)
>>> NOTE: recipe cmake-native-3.3.1-r0: task do_fetch: Started
>>> NOTE: recipe cmake-native-3.3.1-r0: task do_fetch: Succeeded
>>> WARNING: Checksum failure encountered with download of
>>> http://www.w3.org/XML/Test/xmlts20080827.tar.gz;name=testtar - will attempt
>>> other sources if available
>>> WARNING: Renaming
>>> /home/yong/MEL/android/Oreo/2017ww45/VM0/Xen_GVTG_EC1746_RC1-DOM0/build/downloads/xmlts20080827.tar.gz
>>> to
>>> /home/yong/MEL/android/Oreo/2017ww45/VM0/Xen_GVTG_EC1746_RC1-DOM0/build/downloads/xmlts20080827.tar.gz_bad-checksum_3a944b972f2da90b97d8a57c6f939fa8
>>> NOTE: recipe libxml2-2.9.2-r0: task do_fetch: Succeeded
>>> NOTE: recipe libxml2-native-2.9.2-r0: task do_fetch: Succeeded
>>> NOTE: recipe glibc-initial-2.22-r0: task do_fetch: Succeeded
>>> NOTE: recipe glibc-2.22-r0: task do_fetch: Succeeded
>>> NOTE: recipe cairo-1.14.2-r1: task do_fetch: Succeeded
>>> NOTE: recipe binutils-cross-x86_64-2.25.1-r0: task do_fetch: Succeeded
>>> NOTE: Sending SIGTERM to remaining 1 tasks
>>>
>>>
>>> SRC_URI = "git://github.com/GENIVI/dlt-daemon.git;protocol=https \
>>>            file://0004-Modify-systemd-config-directory.patch \
>>>
>>> file://0005-Rework-of-initialization-cleanup-of-user-library.patch \
>>>            file://0006-Fix-buffer-overflow-in-dlt_message_payload.patch \
>>>
>>> file://0007-Fix-segfault-when-calling-DLT_LOG-on-an-uninitialize.patch \
>>>            file://0008-Header-and-payload-logging-fixed.patch \
>>>            file://0009-Enabled-mutex-priority-inheritance.patch \
>>>            file://0010-Fix-SEGFAULT-in-write_-utf8_-string.patch \
>>>            file://10-tmp-dlt.conf \
>>>            "
>>> SRCREV = "e9a486a08fff6d3cc7133a350cec3ee10f463207"
>>>
>>>
>>> regards
>>>
>>> Yong
>>>
>>>
>>> --
>>> _______________________________________________
>>> yocto mailing list
>>> yocto at yoctoproject.org
>>> https://lists.yoctoproject.org/listinfo/yocto
>>>



More information about the yocto mailing list