TadasBaltrusaitis / OpenFace

OpenFace – a state-of-the art tool intended for facial landmark detection, head pose estimation, facial action unit recognition, and eye-gaze estimation.
Other
6.71k stars 1.82k forks source link

Error while building on Mac OS with M1 chipset #1003

Open bahadirbk opened 2 years ago

bahadirbk commented 2 years ago

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

ThomasJanssoone commented 2 years ago

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 8 months ago

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