-
-
Notifications
You must be signed in to change notification settings - Fork 5.6k
Labels
buildingBuild system, or building Julia or its dependenciesBuild system, or building Julia or its dependenciesexternal dependenciesInvolves LLVM, OpenBLAS, or other linked librariesInvolves LLVM, OpenBLAS, or other linked librariessystem:apple siliconAffects Apple Silicon only (Darwin/ARM64) - e.g. M1 and other M-series chipsAffects Apple Silicon only (Darwin/ARM64) - e.g. M1 and other M-series chips
Description
Default build of OpenBLAS on macOS ARM (Apple Silicon) within Julia:
make prefix=/tmp/toto VERBOSE=1 USE_BINARYBUILDER=0 PYTHON=python3 MACOSX_VERSION_MIN=12 USE_SYSTEM_LLVM=1 USE_SYSTEM_LIBUNWIND=1
gives the following build error:
gfortran -mmacosx-version-min=12 -mcpu=apple-a12 -Wa,-q -O2 -fPIC -fdefault-integer-8 -O2 -fdefault-integer-8 -Wall -frecursive -fno-optimize-sibling-calls -fPIC -march=armv8-a -c -o spotrf2.o spotrf2.f
f951: Error: unknown value 'apple-a12' for '-mcpu'
f951: note: valid arguments are: cortex-a34 cortex-a35 cortex-a53 cortex-a57 cortex-a72 cortex-a73 thunderx thunderxt88p1 thunderxt88 octeontx octeontx81 octeontx83 thunderxt81 thunderxt83 emag xgene1 falkor qdf24xx exynos-m1 phecda thunderx2t99p1 vulcan thunderx2t99 cortex-a55 cortex-a75 cortex-a76 cortex-a76ae cortex-a77 cortex-a78 cortex-a78ae cortex-a78c cortex-a65 cortex-a65ae cortex-x1 ares neoverse-n1 neoverse-e1 octeontx2 octeontx2t98 octeontx2t96 octeontx2t93 octeontx2f95 octeontx2f95n octeontx2f95mm a64fx tsv110 thunderx3t110 zeus neoverse-v1 saphira neoverse-n2 cortex-a57.cortex-a53 cortex-a72.cortex-a53 cortex-a73.cortex-a35 cortex-a73.cortex-a53 cortex-a75.cortex-a55 cortex-a76.cortex-a55 cortex-r82 generic
make[4]: *** [spotrf2.o] Error 1
make[3]: *** [lapacklib] Error 2
make[2]: *** [netlib] Error 2
*** Clean the OpenBLAS build with 'make -C deps clean-openblas'. Rebuild with 'make OPENBLAS_USE_THREAD=0' if OpenBLAS had trouble linking libpthread.so, and with 'make OPENBLAS_TARGET_ARCH=NEHALEM' if there were errors building SandyBridge support. Both these options can also be used simultaneously. ***
I tried passing OPENBLAS_TARGET_ARCH=VORTEX
to make
as an additional parameter, which is passed down to openblas as make TARGET=VORTEX
. But that does not appear to solve the issue.
Metadata
Metadata
Assignees
Labels
buildingBuild system, or building Julia or its dependenciesBuild system, or building Julia or its dependenciesexternal dependenciesInvolves LLVM, OpenBLAS, or other linked librariesInvolves LLVM, OpenBLAS, or other linked librariessystem:apple siliconAffects Apple Silicon only (Darwin/ARM64) - e.g. M1 and other M-series chipsAffects Apple Silicon only (Darwin/ARM64) - e.g. M1 and other M-series chips