NIRALUser / GROUPS

Group wise registration for 3d-models
Apache License 2.0
0 stars 11 forks source link

COMP: Ensure headers like "stdlib.h" can be found on macOS when building LAPACK #35

Closed jcfr closed 2 years ago

jcfr commented 2 years ago

This commit fixes errors like the following:

  [...]
  /Applications/Xcode_11.7.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc  \
    -I/path/to/SPHARM-PDM-build/LAPACK/LAPACKE/include \
    -I/path/to/SPHARM-PDM-build/LAPACK-build/include -O3 -DNDEBUG \
    -fPIC -MD -MT LAPACKE/CMakeFiles/lapacke.dir/src/lapacke_cbbcsd.c.o -MF \
    CMakeFiles/lapacke.dir/src/lapacke_cbbcsd.c.o.d -o CMakeFiles/lapacke.dir/src/lapacke_cbbcsd.c.o \
    -c /path/to/SPHARM-PDM-build/LAPACK/LAPACKE/src/lapacke_cbbcsd.c

  In file included from /path/to/SPHARM-PDM-build/LAPACK/LAPACKE/src/lapacke_cbbcsd.c:34:
  In file included from /path/to/SPHARM-PDM-build/LAPACK/LAPACKE/include/lapacke_utils.h:37:
  /path/to/SPHARM-PDM-build/LAPACK/LAPACKE/include/lapacke.h:44:10: fatal error: 'stdlib.h' file not found

Specifying the CMAKE_OSX_SYSROOT option ensures the -isysroot parameter is is passed to successfully look up the headers:

  /Applications/Xcode_11.7.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc  \
    -I/path/to/SPHARM-PDM-build/LAPACK/LAPACKE/include \
    -I/path/to/SPHARM-PDM-build/LAPACK-build/include -O3 -DNDEBUG \
    -isysroot /Applications/Xcode_11.7.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk \
    -fPIC -MD -MT LAPACKE/CMakeFiles/lapacke.dir/src/lapacke_cbbcsd.c.o -MF \
    CMakeFiles/lapacke.dir/src/lapacke_cbbcsd.c.o.d -o CMakeFiles/lapacke.dir/src/lapacke_cbbcsd.c.o \
    -c /path/to/SPHARM-PDM-build/LAPACK/LAPACKE/src/lapacke_cbbcsd.c

References: