[OE-core] [PATCH] package_manager: Fix populate_sdk for dpkg packages

Aníbal Limón anibal.limon at linux.intel.com
Mon Nov 3 20:49:34 UTC 2014


Ricardo,

I figured out the reason for this problem when rootfs is creating then 
uses PACKAGE_ARCHS but when is creating sdk for host SDK_PACKAGE_ARCHS is
used, now i'm fixing DpkgPM set self.all_arch_list variable from 
PACKAGE_ARCHS to passed archs var.

I'll send new patch soon.

Thanks.

On 03/11/14 11:27, Aníbal Limón wrote:
> Ricardo,
>
> I think the problem isn't related to this, the all_arch_list is set to 
> archs + multilib_archs see the __init__ func.
>
> Best regards.
>
> On 01/11/14 10:57, Ricardo Ribalda Delgado wrote:
>> Without this patch:
>>
>> ERROR: Unable to install packages. Command 
>> '/var/lib/jenkins/jobs/qt5022-cesium/workspace/build/tmp/sysroots/x86_64-linux/usr/bin/apt-get 
>> install --force-yes --allow-unauthenticated 
>> nativesdk-packagegroup-sdk-host packagegroup-cross-canadian-qt5022' 
>> returned 100:
>> Reading package lists...
>> Building dependency tree...
>> Reading state information...
>> W: Unable to read 
>> /var/lib/jenkins/jobs/qt5022-cesium/workspace/build/tmp/work/bobcat_64-poky-linux/meta-toolchain/1.0-r7/apt-sdk/preferences.d/ 
>> - DirectoryExists (2: No such file or directory)
>> E: Unable to locate package nativesdk-packagegroup-sdk-host
>> E: Unable to locate package packagegroup-cross-canadian-qt5022
>>
>> ERROR: Function failed: do_populate_sdk
>> ERROR: Logfile of failure stored in: 
>> /var/lib/jenkins/jobs/qt5022-cesium/workspace/build/tmp/work/bobcat_64-poky-linux/meta-toolchain/1.0-r7/temp/log.do_populate_sdk.4926
>> NOTE: recipe meta-toolchain-1.0-r7: task do_populate_sdk: Failed
>> ERROR: Task 7 
>> (/var/lib/jenkins/jobs/qt5022-cesium/workspace/repo/yocto/meta/recipes-core/meta/meta-toolchain.bb, 
>> do_populate_sdk) failed with exit code '1'
>> Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda at gmail.com>
>> ---
>>
>> Tested on yocto 1.7
>>
>> Only build test, not tested on target.
>>
>>   meta/lib/oe/package_manager.py | 5 +++--
>>   1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/meta/lib/oe/package_manager.py 
>> b/meta/lib/oe/package_manager.py
>> index 27fdf26..8828bce 100644
>> --- a/meta/lib/oe/package_manager.py
>> +++ b/meta/lib/oe/package_manager.py
>> @@ -188,7 +188,7 @@ class DpkgIndexer(Indexer):
>>                   release.write("Label: %s\n" % arch)
>>                 cmd += "PSEUDO_UNLOAD=1 %s release . >> Release" % 
>> apt_ftparchive
>> -
>> +
>>               index_cmds.append(cmd)
>>                 deb_dirs_found = True
>> @@ -1467,6 +1467,7 @@ class DpkgPM(PackageManager):
>>       def __init__(self, d, target_rootfs, archs, base_archs, 
>> apt_conf_dir=None):
>>           super(DpkgPM, self).__init__(d)
>>           self.target_rootfs = target_rootfs
>> +        self.pkg_archs = archs
>>           self.deploy_dir = self.d.getVar('DEPLOY_DIR_DEB', True)
>>           if apt_conf_dir is None:
>>               self.apt_conf_dir = self.d.expand("${APTCONF_TARGET}/apt")
>> @@ -1662,7 +1663,7 @@ class DpkgPM(PackageManager):
>>           bb.utils.mkdirhier(self.apt_conf_dir + "/apt.conf.d/")
>>             arch_list = []
>> -        for arch in self.all_arch_list:
>> +        for arch in self.pkg_archs.split():
>>               if not os.path.exists(os.path.join(self.deploy_dir, 
>> arch)):
>>                   continue
>>               arch_list.append(arch)
>




More information about the Openembedded-core mailing list