You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For installing requirements for building the conan package.
Then execute conan build -pr <your_profile> ....
If on your system the command tree is not found (in linux you can uninstall it with the command apt-get remove tree to try this), conan will try to install the package for arm and not for your host architecture (x86), means it will try to install tree:arm instead of just tree.
Logs
conan executes something like that apt-get install tree:arm on x86 architecture and we get an error that the architecture is suitable for our device.
Have you read the CONTRIBUTING guide?
I've read the CONTRIBUTING guide
The text was updated successfully, but these errors were encountered:
LielHarel
changed the title
Install packages compatible with incorrect architecture
[bug] Install packages compatible with incorrect architecture
Aug 24, 2023
It is not completely clear that the "build" package is always the one to be installed. I understood that some distros allow the :arch precisely to be able to install some packages that can be used in cross-compilation scenarios, even if they don't match the current machine "build" architecture. This is the case when the system requirements are libraries to link.
On the other hand, I understand that some tools executables, intended to be run in the "build" context (the tree example), which is a different use case than the "host" cross-build scenario of the libraries.
So I think this is not exactly a bug that is solved by changing the context for all install, but I think that what we are missing here is a qualifier in the install methods that specify whether a system-require is a tool build=True for example or it is a library (maybe the default, build=False?). Based on that qualifier, the internal will decide to append the :arch host architecture or not.
If you would like to contribute such a feature, it will be very appreciated of course :) Thanks very much!
Environment details
Steps to reproduce
If your host architecture is x86 and in your profile is defined:
_SystemPackageManagerTool
in some way, for example:For installing requirements for building the conan package.
Then execute
conan build -pr <your_profile> ....
If on your system the command
tree
is not found (in linux you can uninstall it with the commandapt-get remove tree
to try this), conan will try to install the package for arm and not for your host architecture (x86), means it will try to installtree:arm
instead of justtree
.Logs
conan executes something like that
apt-get install tree:arm
on x86 architecture and we get an error that the architecture is suitable for our device.Have you read the CONTRIBUTING guide?
The text was updated successfully, but these errors were encountered: