[OE-core] How do I change the "Architecture" of a package?

Paul Barker paul at paulbarker.me.uk
Tue Dec 30 17:59:15 UTC 2014


On Tue, Dec 30, 2014 at 04:24:34PM +0100, Mike Looijmans wrote:
> What if the architecture of a package was accidentally left at its
> default, but it should have been "all" for example?
> 
> Just putting "inherit allarch" or simply PACKAGE_ARCH="all" into the
> recipe is not enough. You get stuck with a "more specific" older
> version, so that no device wants to upgrade to the newer version
> that's "all" architecture compatible.
>

What package manager are you using on the device? If you're using opkg it should
prioritise by version not arch unless the command line option
'--prefer-arch-to-version' is passed. If you're using opkg and it's not doing
that, let me know and I'll look into it when I get chance to.

> Only way to fix this was to manually remove the old version from the
> feeds and also manually remove it from the device, and then
> reinstall it. This works for me personally, but what if I want to
> apply this to about a million devices that are already in the field?
> 
> What can I do to get them to upgrade from the (in this case)
> "mipsel32" to "all" package?

As an absolute hack, you could rename the package and set it to
replace/conflict/provide the old package name. I think there should be better
solutions though.

> 
> (and I have a few dozen of these mis-architectured packages...)
> 
> -- 
> Mike Looijmans
> -- 

Thanks,

-- 
Paul Barker

Email: paul at paulbarker.me.uk
http://www.paulbarker.me.uk
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20141230/10688ae6/attachment-0002.sig>


More information about the Openembedded-core mailing list