Unable to fetch zstd

Hi all,

I can’t bitbake zstd since 31/12/18.

Just followed the instructions for tk1 here:

Running bitbake zstd the following error:

WARNING: zstd-1.3.3+gitAUTOINC+f3a8bd553a-r0 do_fetch: Failed to fetch URL git://github.com/facebook/zstd.git;protocol=https;branch=master, attempting MIRRORS if available
ERROR: zstd-1.3.3+gitAUTOINC+f3a8bd553a-r0 do_fetch: Fetcher failure: Unable to find revision f3a8bd553a865c59f1bd6e1f68bf182cf75a8f00 in branch master even from upstream
ERROR: zstd-1.3.3+gitAUTOINC+f3a8bd553a-r0 do_fetch: Fetcher failure for URL: 'git://github.com/facebook/zstd.git;protocol=https;branch=master'. Unable to fetch URL from any source.
ERROR: zstd-1.3.3+gitAUTOINC+f3a8bd553a-r0 do_fetch: Function failed: base_do_fetch
ERROR: Logfile of failure stored in: /data/home/ffer/toradex/build/tmp-glibc/work/armv7at2hf-vfp-angstrom-linux-gnueabi/zstd/1.3.3+gitAUTOINC+f3a8bd553a-r0/temp/log.do_fetch.47019
ERROR: Task (/data/home/ffer/toradex/build/../layers/meta-angstrom/recipes-tweaks/btrfs-tools/zstd_git.bb:do_fetch) failed with exit code '1'

Hi @Fabiano.Ferronato!

I tried to reproduce the issue and in fact I got the same error. Seems the git revision id used by the zstd recipe isn’t valid anymore.

Since the layer maintainers haven’t yet fixed the issue (the recipe is in the meta-angstrom layer), you could change the revision number as a workaround.

In the zstd recipe (layers/meta-angstrom/recipes-tweaks/btrfs-tools/zstd_git.bb), change SRCREV to acbd6c0341237f177628a1888daaea892b442402, which is the most recent commit I found on the master branch.

It’s not guaranteed it’ll work, but at least it compiles just fine.

Best regards,

Gustavo.

Hi Gustavo, Thanks for answering.

Unfortunately I can’t change SRCREV and build without running extensive tests on the new image. So I’m trying to find the less “intrusive” solution.

I can see do_fetch is failing when looking for the BRANCH with specific SHA1:

git -c core.fsyncobjectfiles=0 branch --contains f3a8bd553a865c59f1bd6e1f68bf182cf75a8f00 --list master

And then it is not finding any mirror to download the source:

wget -t 2 -T 30 -nv --passive-ftp --no-check-certificate -P /data/home/ffer/oe-core/build/downloads 'http://downloads.yoctoproject.org/mirror/sources/git2_github.com.facebook.zstd.git.tar.gz

HTTP request sent, awaiting response... 404 Not Found

When I clone repository:

git clone https://github.com/facebook/zstd.git /data/home/ffer/oe-core/build/downloads/git2/github.com.facebook.zstd.git 

I can find the specific SHA1 (with no branch).

Of course, Facebook is stupider than stupid. Their release seems to be branchless! How about trying the following?

SRCREV = "v1.3.3"
SRC_URI = "git://github.com/facebook/zstd.git;protocol=https;tag=${SRCREV};nobranch=1"

Which is exactly what f3a8bd553a865c59f1bd6e1f68bf182cf75a8f00 seems to be.

BTW: You may also want to add the following to actually get it building.

EXTRA_OECMAKE_append = " -DTHREADS_PTHREAD_ARG=0"

You may find a suitable bbappend here:

http://git.toradex.com/cgit/meta-toradex-bsp-common.git/log/?h=rocko-next