4

I'm a new hand and try to build a xilinx by pocto. As the guide, I cloned repositories (branch thud), source oe-... and change MACHINE="zedborad-zynq7", then bitbake petalinux-image-minimal, but I get following error:

ERROR: tcf-agent-1.7.0+gitAUTOINC+dad3a6f568-r0 do_fetch: Fetcher failure: Fetch command ... https://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git refs/:refs/ failed with exit code 128, output: fatal: repository 'https://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git/' not found ... ERROR: Task (~/poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb:do_fetch) failed with exit code '1'

The issue is that the statement in tcf-agent_git.bb:

SRC_URI = "git://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent \

It is NOT the wrong address, In fact, I can clone successfully with this address. On the other hand, any my modify on this variable will NOT work either. I already grep -rn "eclipse.org", but only find this file.

Any recommendation will be welcome.

Thanks lot.

——————————————————————————

I can't resolve this issue finally. I find that the builder does NOT fetch from the address the SRC_URL offer at all, instead, it fetches from a mirror given somewhere.

As a test, I edited the .bb file, add PREMIRRORS="" and MIRROS="", and add protocal=git statement for the SRC_URI. The statements are effective realy, the builder fetches from the SRC_URL address, but the protocol is still HTTPS, the function still fails. My solution is cloning the source manually, and putting it to corresponding directory, in order to let the builder know this, I also touch a package_name.done and chmod 777 in the same directory, then I can continue.

coolicelee
  • 73
  • 6
  • 1
    just for your info, I see it fetched from http://downloads.yoctoproject.org/mirror/sources/git2_git.eclipse.org.gitroot.tcf.org.eclipse.tcf.agent.tar.gz at the current master of poky. Check your log.do_fetch log file to find out which mirrors it will try to access. – vermaete Jan 06 '20 at 14:02
  • I already commented lines of SSTATE_MIRROES statement in local.conf, but the error can't be fixed. It seems that this issue is not from mirror. – coolicelee Jan 07 '20 at 13:37

3 Answers3

7

I've run into the exact same issue using Xilinx Yocto stack (rel-v2018.3 branch). For me, the problem wasn't in the tcf-agent_git.bb recipe in core/meta/recipes-devtools/tcf-agent, but in the tcf-agent_%.bbappend file in meta-petalinux/recipes-devtools/tcf-agent. In there, I replaced

SRC_URI = " \
    git://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git;branch=master;protocol=https \
    file://fix_ranlib.patch;striplevel=2 \
    file://ldflags.patch \
    file://tcf-agent.init \
    file://tcf-agent.service \
    "

with

SRC_URI = " \
    git://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git;branch=master \
    file://fix_ranlib.patch;striplevel=2 \
    file://ldflags.patch \
    file://tcf-agent.init \
    file://tcf-agent.service \
    "

and it finishes building correctly.

The former used to work fine last time I built the image (a few months ago) but for some reason the protocol=https option makes it fail now.

eblanco
  • 86
  • 2
1

Your SRC_URI seems wrong.

it should be

SRC_URI = "git://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git \

This one is working perfect for me. Note : The back slash () at the end means you have multiple line SRC_URI. correct it if you have only single line.

zappy
  • 1,864
  • 3
  • 18
  • 36
  • Thanks for your answer. The problem is that the key is not the URL, whatever I change the SRC_URI, it always clone from that wrong address, never change. – coolicelee Jan 07 '20 at 13:26
  • You could try to do a bitbake with the option -e . e.g. 'bitbake tcf-agent -e > log'. In the file 'log' you could be able to find out what the used SRC_URI is and how it is constructed. – vermaete Jan 07 '20 at 14:00
0

In December 2021, using branch rel-v2020.1, I needed to change the line into :

SRC_URI = "git://git.eclipse.org/r/tcf/org.eclipse.tcf.agent.git;protocol=https \
oscar1919
  • 129
  • 3