‎2019-11-14 03:56 AM
Hi, I try to add a new layer and a new machine to the STM32MP1 Distribution Image. i followed the following tutorials tutorials:
https://wiki.st.com/stm32mpu/wiki/How_to_create_a_new_open_embedded_layer
https://wiki.st.com/stm32mpu/wiki/How_to_compile_the_device_tree_with_the_Distribution_Package
However, I am still getting the following error:
WARNING: st-image-core-1.0-r0 do_populate_lic: Could not copy license file /home/user/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-st-stm32mp-addons/conf/eula/stm32mp1-mymachine to /home/user/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/build-openstlinuxeglfs-stm32mp1-mymachine/tmp-glibc/work/stm32mp1_mymachine-openstlinux_eglfs-linux-gnueabi/st-image-core/1.0-r0/license-destdir/st-image-core/stm32mp1-mymachine: [Errno 2] No such file or directory: '/home/user/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-st-stm32mp-addons/conf/eula/stm32mp1-mymachine'
ERROR: st-image-core-1.0-r0 do_populate_lic: QA Issue: st-image-core: LIC_FILES_CHKSUM points to an invalid file: /home/user/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-st-stm32mp-addons/conf/eula/stm32mp1-mymachine [license-checksum]
ERROR: st-image-core-1.0-r0 do_populate_lic: Fatal QA errors found, failing task.
ERROR: st-image-core-1.0-r0 do_populate_lic: Function failed: populate_lic_qa_checksum
ERROR: Logfile of failure stored in: /home/user/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/build-openstlinuxeglfs-stm32mp1-mymachine/tmp-glibc/work/stm32mp1_mymachine-openstlinux_eglfs-linux-gnueabi/st-image-core/1.0-r0/temp/log.do_populate_lic.30716
ERROR: Task (/home/user/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-st-openstlinux/recipes-st/images/st-image-core.bb:do_populate_lic) failed with exit code '1'
So it looks that the bibtake still looks for the license file in the meta-st-stm32mp-addons, but not in my layer directory. Is there something I need to add to the configuration described in the tutorials from stm32mp1 wiki? I have already created the conf/eula directory in my layer with the link stm32mp1-mymachine -> ST_EULA_SLA.
Best regards,
Krzysztof
Solved! Go to Solution.
‎2019-12-04 07:36 AM
I created the layer once again according to the wiki posts with the same directory names. It is located in the meta-st/meta-my-demo-layer/ directory/ - the error is still the same.
ll ../layers/meta-st/meta-my-demo-layer/conf/eula/
total 64
drwxrwxr-x 2 krzysiek krzysiek 4096 gru 4 14:23 ./
drwxrwxr-x 4 krzysiek krzysiek 4096 gru 4 14:23 ../
-rw-rw-r-- 1 krzysiek krzysiek 5533 gru 4 14:23 en.SLA0048.txt
-rw-rw-r-- 1 krzysiek krzysiek 4178 gru 4 14:23 LICENCE.broadcom_bcm43xx
-rw-rw-r-- 1 krzysiek krzysiek 8997 gru 4 14:23 LICENCE.cypress
-rw-rw-r-- 1 krzysiek krzysiek 21707 gru 4 14:23 ST_EULA_SLA
lrwxrwxrwx 1 krzysiek krzysiek 11 gru 4 14:23 stm32mp1-demo -> ST_EULA_SLA
-rw-rw-r-- 1 krzysiek krzysiek 2757 gru 4 14:23 Vivante_GPU_drivers-End_User_Software_License_Terms.txt
cat ../layers/meta-st/meta-my-demo-layer/conf/layer.conf
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "meta-my-demo-layer"
BBFILE_PATTERN_meta-my-demo-layer = "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-my-demo-layer = "7"
EULA_FILE_ST_stm32mpmydemo = "${LAYERDIR}/conf/eula/${MACHINE}"
EULA_FILE_ST_MD5SUM_stm32mpmydemo = "8b505090fb679839cefbcc784afe8ce9"
#Inform bitbake for adding another location to search for licenses
LICENSE_PATH += "${LAYERDIR}/files/licenses"
# Set a variable to get the STM32MP MX BSP location
STM32MP_MY_DEMO_BASE = "${LAYERDIR}"
# This should only be incremented on significant changes that may
# cause compatibility issues with other layers
LAYERVERSION_meta-my-demo-layer = "1"
LAYERDEPENDS_meta-my-demo-layer = "stm-st-stm32mp-mx"
LAYERSERIES_COMPAT_meta-my-demo-layer = "thud"
bitbake-layers show-layers
NOTE: Starting bitbake server...
layer path priority
==========================================================================
meta-my-demo-layer /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-my-demo-layer 7
meta-st-stm32mp-addons /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-st-stm32mp-addons 7
meta-python /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-python 7
meta-oe /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-oe 6
meta-oe /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-oe 6
meta-gnome /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-gnome 7
meta-xfce /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-xfce 7
meta-initramfs /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-initramfs 8
meta-multimedia /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-multimedia 6
meta-networking /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-networking 5
meta-webserver /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-webserver 6
meta-filesystems /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-filesystems 6
meta-perl /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-perl 6
meta-python /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-openembedded/meta-python 7
meta-st-stm32mp /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-st-stm32mp 6
meta-qt5 /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-qt5 7
meta-st-openstlinux /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-st-openstlinux 5
meta /home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/openembedded-core/meta 5
bitbake -e | grep ^EULA_FILE_ST
EULA_FILE_ST="/home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-st-stm32mp-addons/conf/eula/stm32mp1-demo"
EULA_FILE_ST_MD5SUM="8b505090fb679839cefbcc784afe8ce9"
EULA_FILE_ST_MD5SUM_stm32mpcommon="8b505090fb679839cefbcc784afe8ce9"
EULA_FILE_ST_MD5SUM_stm32mpcommonmx="8b505090fb679839cefbcc784afe8ce9"
EULA_FILE_ST_MD5SUM_stm32mpmydemo="8b505090fb679839cefbcc784afe8ce9"
EULA_FILE_ST_stm32mpcommon="/home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-st-stm32mp/conf/eula/stm32mp1-demo"
EULA_FILE_ST_stm32mpcommonmx="/home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-st-stm32mp-addons/conf/eula/stm32mp1-demo"
EULA_FILE_ST_stm32mpmydemo="/home/krzysiek/workspace/STM32MP1/Distribution-Package/openstlinux-4.19-thud-mp1-19-10-09/layers/meta-st/meta-my-demo-layer/conf/eula/stm32mp1-demo"
Krzysztof
‎2019-12-04 08:16 AM
It looks like you didn't set MACHINEOVERRIDES .= ":stm32mpmydemo" in your new machine.
When properly set you should get :
$> bitbake -e | grep ^MACHINEOVERRIDES
MACHINEOVERRIDES="armv7ve:stm32mp1-demo:stcommon:stm32mpcommon:stm32mpmydemo"
$> bitbake -e | grep ^EULA_FILE_ST
EULA_FILE_ST="<my path>/layers/meta-st/meta-my-demo-layer/conf/eula/stm32mp1-demo"
Olivier
‎2019-12-04 08:26 AM
Pay attention to put MACHINEOVERRIDES .= ":stm32mpmydemo" at the end of your conf file.
It might be the last one in the MACHINEOVERRIDES list.
Olivier
‎2019-12-04 08:32 AM
Yeah... I have just moved it below the includes list and it looks that the error disappeared. I will verify it once again on a clean build and then on my own layer. Thanks for the help.
Krzysztof
‎2019-12-05 07:46 AM
Hi Olivier,
This was the real problem since the beginning. Thank you for help. It solved this issue in all layers I created.
Krzysztof
‎2019-12-05 08:34 AM
Thanks for feedback.
Sorry not to pointed out this earlier. :\
We are working to enhanced the wiki in order nobody else fall into the trap.
Olivier