Bug 12093

Summary: do_populate_sdk RPM metadata conflict between nativesdk-cmake and nativesdk-qtbase-tools
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Jan-Simon Moeller <dl9pf>
Component: devtools / tool chainAssignee: Hongxu Jia <hongxu.jia>
Status: RESOLVED OBSOLETE QA Contact:
Severity: normal    
Priority: Medium+ CC: dl9pf, meta.mr.watcher, meta.watcher, randy.macleod
Version: 2.3.2   
Target Milestone: 2.5 M4   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Jan-Simon Moeller 2017-09-15 18:50:22 UTC
do_populate_sdk fails in latest pyro + meta-qt5 when generating the sdk:

Running transaction test
Error: Transaction check error:
  file /opt/poky/2.3.2/sysroots/x86_64-pokysdk-linux/environment-setup.d conflicts between attempted installs of nativesdk-cmake-3.7.2-r0.x86_64_nativesdk and nativesdk-qtbase-tools-5.8.0+git0+49dc9aa409-r0.x86_64_nativesdk

Error Summary
-------------


ERROR: agl-demo-platform-crosssdk-1.0-r0 do_populate_sdk: Function failed: do_populate_sdk
Comment 1 Jan-Simon Moeller 2017-09-15 21:38:48 UTC
These mitigate the issue

FILES_pn-nativesdk-qtbase-tools_remove = "${SDKPATHNATIVE}/environment-setup.d"
FILES_pn-nativesdk-qtbase-tools_append = " ${SDKPATHNATIVE}/environment-setup.d/qt5.sh"


So it seems like a DIRFILES issue.

But who should get the DIRFILES = "1" ? cmake or qtbase ?
Comment 2 Randy MacLeod 2017-09-21 14:51:24 UTC
Robert, please check if this affects 2.4 and then backport as needed.
As for guidance on DIRFILES if needed.
Comment 3 Hongxu Jia 2018-04-17 06:05:02 UTC
Test on 2.5, the issue does not exist

edit conf/local.conf
...
TOOLCHAIN_HOST_TASK_append = " nativesdk-cmake nativesdk-qtbase-tools"
...

bitbake meta-toolchain-qt5
...
ls tmp-glibc/work/core2-64-oe-linux/meta-toolchain-qt5/1.0-r0/sdk/image/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/environment-setup.d/*
tmp-glibc/work/core2-64-oe-linux/meta-toolchain-qt5/1.0-r0/sdk/image/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/environment-setup.d/cmake.sh
tmp-glibc/work/core2-64-oe-linux/meta-toolchain-qt5/1.0-r0/sdk/image/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/environment-setup.d/qt5.sh
...