Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

armv8l not detected #1543

Closed
tcely opened this issue Apr 17, 2018 · 7 comments
Closed

armv8l not detected #1543

tcely opened this issue Apr 17, 2018 · 7 comments

Comments

@tcely
Copy link
Contributor

tcely commented Apr 17, 2018

The alpinelinux armhf build died with an error requesting the cpu flag be set.

>>> botan: Checking sha512sums...
Botan-2.5.0.tgz: OK
>>> botan: Unpacking /var/cache/distfiles/Botan-2.5.0.tgz...
   INFO: ./configure.py invoked with options "--prefix=/usr --mandir=/usr/share/man --with-boost --with-bzip2 --with-lzma --with-openmp --with-openssl --with-sqlite3 --with-zlib"
   INFO: Autodetected platform information: OS="Linux" machine="armv8l" proc=""
   INFO: Guessing target OS is linux (use --os to set)
   INFO: Guessing to use compiler gcc (use --cc or CXX to set)
  ERROR: Could not determine target CPU; set with --cpu
>>> ERROR: botan: all failed

From: http://build.alpinelinux.org/buildlogs/build-edge-armhf/testing/botan/botan-2.5.0-r0.log

@randombit
Copy link
Owner

Can you post uname -a?

@clandmeter
Copy link

We are using an aarch64 machine in 32bit mode to build for armhf so the machine type will show armv8l.

@clandmeter
Copy link

ref: alpinelinux/aports#4049

@randombit
Copy link
Owner

I was not familiar with arvm8l so I had to do some reading about this. I'm putting some notes here both for my own reference later on, and also so you can correct me if anything is wrong.

  • Aarch32 is ARMv8 running in 32-bit mode. It is instruction compatible with ARMv7-A. Here the Aarch32 ABI is identified as armv8l.

  • Since Aarch32 and ARMv7-A are compatible, you are running a native toolchain rather than a crosscompiler.

So I think we should add arvm8l to the ARM32 block rather than ARM64 since this is not Aarch64.

(I see now the Alpine PR has changed to just use --cpu option everywhere - if that works then that is ideal.)

@tcely
Copy link
Contributor Author

tcely commented Apr 17, 2018

@randombit The uname output from that machine is:

$ uname -a >&2
| Linux build-edge-armhf 4.4.19 #2 SMP Mon Sep 5 11:05:13 GMT 2016 armv8l Linux

I believe due to either the existing aliases or the actual names of the files, just setting --cpu="$CARCH" will do what we want.

@clandmeter
Copy link

@randombit correct this is native not cross compile. Adding it to the arm32 block would make auto detection work so no need specify the cpu flag.

@randombit
Copy link
Owner

Fixed by #1544 thank you

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants