flame / blis

BLAS-like Library Instantiation Software Framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

"configure auto" results in an error for users with a Mac M1 Pro processor

cgebhart-lbl opened this issue · comments

The specific error is:

./frame/base/bli_cpuid.c:1182:6: error: use of undeclared identifier 'has_sve'

configure appears to work correctly if "arm32" or "arm64" are specified manually.

Update: it seems that configure arm64 led to a failure when the user tried to do make install:

Generated include/arm64/blis.h Compiling obj/arm64/config/armsve/bli_cntx_init_armsve.o ('armsve' CFLAGS for config code) config/armsve/bli_cntx_init_armsve.c:36:10: fatal error: 'sys/auxv.h' file not found #include <sys/auxv.h> ^~~~~~~~~~~~ 1 error generated. make: *** [obj/arm64/config/armsve/bli_cntx_init_armsve.o] Error 1

doing configure firestorm also "worked" , but calling make install yielded:

../../../blis/version:1:1: error: expected unqualified-id 0.9.0 ^

Update: Apparently installing through homebrew "worked" but I'm still trying to figure out to what extent

@jdiamondGitHub @figual @dnparikh @xrq-phys Any ideas here?

Also @loveshack, since you worked on PR #344.

I see. The problem seems to be that arm64 metaconfig includes armsve, enabling this block, while has_sve is only defined under #ifdef __linux__ here.

I can take a look next week (I have an M1 machine now yay).

@cgebhart-lbl PR #679 fixes the autodetection issue and the sys/auxv.h issue. I couldn't reproduce the problem with the expected unqualified-id error though. Installing on M1 using auto, firestorm, and arm64 all work.