In Zynq UltraScale+ MPSoC VCU devices, 2017.2-2017.4 PetaLinux fails to build gstreamer packages using sstate cache when network is disabled through the BB_NO_NETWORK settings from the petalinux-config options.
This is a known issue in 2017.2-2017.4 PetaLinux if BB_NO_NETWORK is set to 1, and the local download directory is set to PREMIRRORS_prepend in the conf file.
The PREMIRRORS variable will have SOURCE_MIRROR_URL as the first URL.
This causes build to fail as network access is disabled.
PREMIRRORS should be appended here so that a prepend in other layers/conf files takes precedence.
To work around this issue follow the steps below:
1) Run petalinux-config ---> Yocto Settings ---> Add pre-mirror url ---> file:///opt/xilinx/petalinux/sstate-rel-v2017.4/downloads
2) Run petalinux-config ---> Yocto Settings ---> Local sstate feeds settings ---> /opt/xilinx/petalinux/sstate-rel-v2017.4/aarch64
3) Run petalinux-config ---> Yocto Settings ---> Network sstate feeds URL ---> http://petalinux.xilinx.com/sswreleases/rel-v${PETALINUX_VER}/aarch64/sstate-cache //Keep this as the default generated from PetaLinux tools
4) Run petalinux-config ---> Yocto Settings ---> [*] Enable BB NO NETWORK //This is mandatory when you do not have network access on build machines.
5) Add this content in <plnx-proj-root>/project-spec/meta-user/conf/petalinuxbsp.conf and make sure that this path matches with the pre-mirror URL path mentioned above.
6) Run "petalinux-build -x mrproper && petalinux-build"