AR# 71198

|

2017.2-2017.4 Zynq UltraScale+ MPSoC VCU: PetaLinux で sstate キャッシュを使用すると gstreamer をビルドできない

説明

Zynq UltraScale+ MPSoC VCU デバイスで、petalinux-config オプションの BB_NO_NETWORK 設定を介してネットワークがディスエーブルになっていると、2017.2-2017.4 PetaLinux で sstate キャッシュを使用して gstreamer をビルドできません。

$ petalinux-build 
[INFO] building project
[INFO] sourcing bitbake
INFO: bitbake petalinux-user-image
Loading cache: 100% |###########################################################################################
Time: 0:01:00
Loaded 3258 entries from dependency cache.
Parsing recipes: 100% |###########################################################################################
Time: 2427:00:02
Parsing of 2466 .bb files complete (0 cached, 39 parsed). 3259 targets, 224 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
Initialising tasks: 100% |###########################################################################################
Time: 0:00:16
Checking sstate mirror object availability: 100% |###########################################################################################
Time: 0:00:17
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: gstreamer1.0-omx-1.2.0-r0 do_fetch: Network access disabled through BB_NO_NETWORK (or set indirectly due to use of BB_FETCH_PREMIRRORONLY) but access requested with command /usr/bin/env wget -t 2 -T 30 -nv --passive-ftp --no-check-certificate -P /home/wtsemb/Downloads/xilinx-zcu106-2017.4/build/downloads 'http://www.author.xilinx.com/sswreleases/rel-v2017.4/downloads/git2_github.com.Xilinx.gst-omx.git.tar.gz' (for url None)
ERROR: gstreamer1.0-omx-1.2.0-r0 do_fetch: Function failed: base_do_fetch
ERROR: Logfile of failure stored in: /home/wtsemb/Downloads/xilinx-zcu106-2017.4/build/tmp/work/aarch64-xilinx-linux/gstreamer1.0-omx/1.2.0-r0/temp/log.do_fetch.23461
ERROR: Task (/opt/xilinx/petalinux/2017.4/components/yocto/source/aarch64/layers/core/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.2.0.bb:do_fetch) failed with exit code '1'
NOTE: Tasks Summary: Attempted 4114 tasks of which 3528 didn't need to be rerun and 1 failed.
 
Summary: 1 task failed:
  /opt/xilinx/petalinux/2017.4/components/yocto/source/aarch64/layers/core/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.2.0.bb:do_fetch
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
ERROR: Failed to build project webtalk failed:PetaLinux statistics:extra lines detected:notsent_nofile!
webtalk failed:Failed to get PetaLinux usage statistics!
$

ソリューション

これは 2017.2-2017.4 PetaLinux での既知の問題で、conf ファイルで BB_NO_NETWORK が 1 に設定されていて、ローカルのダウンロード ディレクトリが PREMIRRORS_prepend に設定されている場合に起きます。

PREMIRRORS 変数には、1 番目の URL に SOURCE_MIRROR_URL が設定されます。

これが原因で、ネットワークのアクセスがディスエーブルになります。 

PREMIRRORS は、ほかのレイヤー/コンフィギュレーションファイルの PREPEND が優先されるように追加する必要があります。

この問題を回避するには、次の手順に従ってください。

 

1) petalinux-config を実行 ---> Yocto 設定 ---> pre-mirror url を追加 ---> file:///opt/xilinx/petalinux/sstate-rel-v2017.4/downloads

2) petalinux-config を実行 ---> Yocto 設定 ---> ローカルの sstate フィード設定 ---> /opt/xilinx/petalinux/sstate-rel-v2017.4/aarch64 

3) petalinux-config を実行 ---> Yocto 設定 ---> ネットワーク sstate フィード URL ---> http://petalinux.xilinx.com/sswreleases/rel-v${PETALINUX_VER}/aarch64/sstate-cache  //Keep this as the default generated from PetaLinux tools

4) petalinux-config を実行 ---> Yocto 設定 ---> [*] BB NO NETWORK をイネーブル //This is mandatory when you do not have network on build machines.

5) <plnx-proj-root>/project-spec/meta-user/conf/petalinuxbsp.conf にこの内容を追加し、このパスが前出の PREMIRROR URL パスと一致するようにします。

PREMIRRORS_prepend = " git://.*/.* file:///opt/xilinx/petalinux/sstate-rel-v2017.4/downloads \n \
ftp://.*/.* file:///opt/xilinx/petalinux/sstate-rel-v2017.4/downloads \n \
http://.*/.* file:///opt/xilinx/petalinux/sstate-rel-v2017.4/downloads \n \
https://.*/.* file:///opt/xilinx/petalinux/sstate-rel-v2017.4/downloads \n"

 

6) petalinux-build -x mrproper && petalinux-build を実行

AR# 71198
日付 06/25/2018
ステータス アクティブ
種類 一般
デバイス
ツール 詳細 概略
Boards & Kits
People Also Viewed