TadasBaltrusaitis/OpenFace

Error while building on Mac OS with M1 chipset

bahadirbk opened this issue · 2 comments

Dear @TadasBaltrusaitis,

I need to use openface tool for my project. I have installed and ran it successfully on Ubuntu before but now I need to use it on Mac OS. I did what @ThomasJanssoone suggested here to install in on mac but I' m having an issue while building it. I have M1 Mac so the architecture is arm64 here. I've shared the error below. Please help me. Many thanks in advance!

When I do 'make' in the build folder, I got this error:

objc[52417]: Class AMSupportURLConnectionDelegate is implemented in both /usr/lib/libamsupport.dylib (0x210af7678) and /Library/Apple/System/Library/PrivateFrameworks/MobileDevice.framework/Versions/A/MobileDevice (0x10aee82c8). One of the two will be used. Which one is undefined.
objc[52417]: Class AMSupportURLSession is implemented in both /usr/lib/libamsupport.dylib (0x210af76c8) and /Library/Apple/System/Library/PrivateFrameworks/MobileDevice.framework/Versions/A/MobileDevice (0x10aee8318). One of the two will be used. Which one is undefined.
Consolidate compiler generated dependencies of target LandmarkDetector
[ 34%] Built target LandmarkDetector
Consolidate compiler generated dependencies of target FaceAnalyser
[ 54%] Built target FaceAnalyser
Consolidate compiler generated dependencies of target GazeAnalyser
[ 59%] Built target GazeAnalyser
Consolidate compiler generated dependencies of target Utilities
[ 81%] Built target Utilities
Consolidate compiler generated dependencies of target FaceLandmarkImg
[ 84%] Linking CXX executable ../../bin/FaceLandmarkImg
Undefined symbols for architecture arm64:
"__gfortran_concat_string", referenced from:
dgesvd in libopenblas.a(dgesvd.f.o)
dormbr in libopenblas.a(dormbr.f.o)
dormlq in libopenblas.a(dormlq.f.o)
dormqr in libopenblas.a(dormqr.f.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [bin/FaceLandmarkImg] Error 1
make[1]: *** [exe/FaceLandmarkImg/CMakeFiles/FaceLandmarkImg.dir/all] Error 2
make: *** [all] Error 2

hello,

it looks like an openBlas install error. I am not sure but I think it has a different configuration for M1 chip. You can check this thread for more details.

x4080 commented

@ThomasJanssoone so the solution is to build openblas for our apple silicon to make it work ?