Marco
1
Does the hardware even support armhf
? For reference, here’s a dump of /proc/cpuinfo
and lscpu
, it suggests that the processor is APM883832-X3. It has the fp
flag but https://stackoverflow.com/questions/37790029/what-is-difference-between-arm64-and-armhf claims that an armhf
-compliant CPU should rather have vfpv3
and that it’s a 32-bit architecture.
FWIW, you can run the necessary apt
commands yourself – e.g. in the install:
phase – and test.
I believe a call to dpkg --add-architecture armhf
is needed before running the apt addon.
Possibly your suggestion makes sense for me.
Here is the default setting for Travis amd64 (x86_64) environment.
$ dpkg --print-architecture
amd64
$ dpkg --print-foreign-architectures
i386
see for example https://github.com/bitcoin-core/secp256k1/blob/387d723c3f700990d1d22b643e53ba6e828635d5/.travis.yml#L44
That’s the reason why this example worked.
For Travis arm64 environment, the result is like this.
$ dpkg --print-architecture
arm64
$ dpkg --print-foreign-architectures
<= empty line.
However, the same does not work for arm64, see for example Travis CI - Test and Deploy with Confidence
That’s the reason this example did not work.
I think that the solution right now is to have own before_install
or something for armhf case like this.
You can see https://github.com/junaruga/ci-multi-arch-native-test/blob/master/.travis.yml#L29-L46 , Travis log (arm32 case): Travis CI - Test and Deploy with Confidence
$ sudo dpkg --add-architecture armhf
$ dpkg --print-architecture
arm64
$ dpkg --print-foreign-architectures
armhf
$ sudo apt-get -yq install crossbuild-essential-armhf libc6:armhf
1 Like
Then you may want to vote on this feature request to make that possible: