2015-06-02 48 views
-1

我用命令BitBake的建築誤差

$ bitbake angstrom-lxde-image 2>&1 | tee -a buildoutput.txt 

,但有以下錯誤。

ERROR: Function failed: Fetcher failure for URL: ' https://www.khronos.org/registry/khronos_headers.tgz;name=gles-h '. Unable to fetch URL from any source.

ERROR: Logfile of failure stored in: /home/vqhost/oe-core/build/out-eglibc/work/colibri_t20-angstrom-linux-gnueabi/trdx-nv-binaries-1.0-r11/temp/log.do_fetch.6970 NOTE: recipe trdx-nv-binaries-1.0-r11: task do_fetch: Failed

ERROR: Task 1659 (/home/vqhost/oe-core/build/../stuff/meta-toradex/recipes/trdx-nv-binaries/trdx-nv-binaries.bb, do_fetch) failed with exit code '1'

所以請指導我如何解決這個錯誤。

回答

1

該錯誤表示從URL下載失敗。使用curl或瀏覽器轉到URL會顯示以下錯誤:您提交的URI不允許使用字符。。查看URL表示該文件的擴展名爲;名稱= gles-h由於未知原因。

於是找到元toradex代碼,實際上是錯誤告訴你到底在哪些文件:元toradex /食譜/ trdx-NV-二進制文件/ trdx-nv-binaries.bb

在meta-toradex存儲庫我們不會在當前的git HEAD中找到這個URL。但是,我們發現如下:

# the khronos headers are taken from here: https://www.khronos.org/registry/khronos_headers.tgz 
# this tarball changes from time to time breaking the receipe, thus it is provided with the recipe 
SRC_COMMON = " \ 
    [...] 
    file://khronos_headers.tgz \ 
    [...] 

由於這是git的頭,我會檢查這對您當前的代碼,並通過兩種

  • 更新調整它對於您的環境或
  • 工作的最新版本
  • 創建一個新包,修復破碎的一個(在它自己的層創建.bbappend文件,如果你不熟悉如何做到這一點的Yocto)

哦,我送花兒給人當我找到與其他地方完全相同的stackoverflow問題時:https://communities.intel.com/message/309955

+0

當獲取uri時,實際並未使用'name = gles-h':它只是用於bitbake的元數據。實際的URL一度是404(在配方中證明了評論),但現在起作用。 – jku

+0

@jku:是的,這是理論。但是這個錯誤給了我更多的印象,即它並沒有像預期的那樣被削減。命名gles-h文件對我來說也沒有任何意義(特別是如果它是tgz文件的話)。下載後立即下載。也許是一個更老的版本... – volker