Error occurs when running schools example by calling stan() in R

When I tried to call “stan()” to get the fitted result from the school example using the Rstan package. I am using Macbook M1 MacOS Sonoma Version 14.4.1 (23E224); Rstan 2.32.6. I thought it could be something related to my C compiler stuff, but I have no idea what I should do.

> fit <- stan(
+   file = here("homework", "HW10", "10-1.stan"),
+   data = data_ls
+ )
Trying to compile a simple C file
Running /Library/Frameworks/R.framework/Resources/bin/R CMD SHLIB foo.c
using C compiler: ‘clang version 14.0.6’
using SDK: ‘’
clang -arch arm64 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG   -I/opt/R/arm64/include    -fPIC  -falign-functions=64 -Wall -g -O2  -c foo.c -o foo.o
clang -arch arm64 -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -L/Library/Frameworks/R.framework/Resources/lib -L/opt/R/arm64/lib -o foo.so foo.o -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
ld: library 'System' not found
clang-14: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [/Library/Frameworks/R.framework/Resources/share/make/shlib.mk:10: foo.so] Error 1
make cmd is
  make -f '/Library/Frameworks/R.framework/Resources/etc/Makeconf' -f '/Library/Frameworks/R.framework/Resources/share/make/shlib.mk' -f '/Users/yizhi_liang/.R/Makevars' CXX='$(CXX17) $(CXX17STD)' CXXFLAGS='$(CXX17FLAGS)' CXXPICFLAGS='$(CXX17PICFLAGS)' SHLIB_LDFLAGS='$(SHLIB_CXX17LDFLAGS)' SHLIB_LD='$(SHLIB_CXX17LD)' SHLIB='file6c1d593e96fd.so' OBJECTS='file6c1d593e96fd.o'

make would use
clang++ -arch arm64 -std=gnu++17 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG   -I"/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/Rcpp/include/"  -I"/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/RcppEigen/include/"  -I"/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/RcppEigen/include/unsupported"  -I"/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/BH/include" -I"/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/StanHeaders/include/src/"  -I"/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/StanHeaders/include/"  -I"/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/RcppParallel/include/"  -I"/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/rstan/include" -DEIGEN_NO_DEBUG  -DBOOST_DISABLE_ASSERTS  -DBOOST_PENDING_INTEGER_LOG2_HPP  -DSTAN_THREADS  -DUSE_STANC3 -DSTRICT_R_HEADERS  -DBOOST_PHOENIX_NO_VARIADIC_EXPRESSION  -D_HAS_AUTO_PTR_ETC=0  -include '/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/StanHeaders/include/stan/math/prim/fun/Eigen.hpp'  -D_REENTRANT -DRCPP_PARALLEL_USE_TBB=1   -I/opt/R/arm64/include    -fPIC  -falign-functions=64 -Wall -g -O2  -O3 -mtune=native -arch arm64 -ftemplate-depth-256 -c file6c1d593e96fd.cpp -o file6c1d593e96fd.o
if test  "zfile6c1d593e96fd.o" != "z"; then \
  echo clang++ -arch arm64 -std=gnu++17 -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -L"/Library/Frameworks/R.framework/Resources/lib" -L/opt/R/arm64/lib -o file6c1d593e96fd.so file6c1d593e96fd.o  '/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/rstan/lib//libStanServices.a' -L'/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/StanHeaders/lib/' -lStanHeaders -L'/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/RcppParallel/lib/' -ltbb   -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation; \
  clang++ -arch arm64 -std=gnu++17 -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -L"/Library/Frameworks/R.framework/Resources/lib" -L/opt/R/arm64/lib -o file6c1d593e96fd.so file6c1d593e96fd.o  '/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/rstan/lib//libStanServices.a' -L'/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/StanHeaders/lib/' -lStanHeaders -L'/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/RcppParallel/lib/' -ltbb   -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation; \
fi
Error in compileCode(f, code, language = language, verbose = verbose) : 
  using C++ compiler: ‘clang version 14.0.6’using C++17using SDK: ‘’In file included from <built-in>:1:In file included from /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/StanHeaders/include/stan/math/prim/fun/Eigen.hpp:22:In file included from /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/RcppEigen/include/Eigen/Dense:1:In file included from /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/RcppEigen/include/Eigen/Core:19:In file included from /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/RcppEigen/include/Eigen/src/Core/util/Macros.h:679:In file included from /Users/yizhi_liang/miniconda3/bin/../include/c++/v1/cmath:308:/Users/yizhi_liang/miniconda3/bin/../include/c++/v1/math.h:300:15: fatal error: 'math.h' file not found#include_next <math.h>              ^~~~~~~~1 error generated.make: *** [/Library/Frameworks/R.framework/Resources/etc/Makeconf:198: file6c1d593e96fd.o] Error 1
Error in sink(type = "output") : invalid connection
  • Output of writeLines(readLines(file.path(Sys.getenv("HOME"), ".R/Makevars")))
CXX17FLAGS += -O3 -mtune=native -arch arm64 -ftemplate-depth-256
  • Output of devtools::session_info("rstan")
devtools::session_info("rstan")
─ Session info ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
 setting  value
 version  R version 4.3.3 (2024-02-29)
 os       macOS Sonoma 14.4.1
 system   aarch64, darwin20
 ui       RStudio
 language (EN)
 collate  en_US.UTF-8
 ctype    en_US.UTF-8
 tz       America/New_York
 date     2024-04-12
 rstudio  2023.12.1+402 Ocean Storm (desktop)
 pandoc   3.1.11.1 @ /opt/homebrew/bin/pandoc

─ Packages ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
 package        * version    date (UTC) lib source
 abind            1.4-5      2016-07-21 [1] CRAN (R 4.3.0)
 backports        1.4.1      2021-12-13 [1] CRAN (R 4.3.0)
 BH               1.84.0-0   2024-01-10 [1] CRAN (R 4.3.1)
 callr            3.7.6      2024-03-25 [1] CRAN (R 4.3.1)
 checkmate        2.3.1      2023-12-04 [1] CRAN (R 4.3.1)
 cli              3.6.2      2023-12-11 [1] CRAN (R 4.3.1)
 colorspace       2.1-0      2023-01-23 [1] CRAN (R 4.3.0)
 desc             1.4.3      2023-12-10 [1] CRAN (R 4.3.1)
 distributional   0.4.0      2024-02-07 [1] CRAN (R 4.3.1)
 fansi            1.0.6      2023-12-08 [1] CRAN (R 4.3.1)
 farver           2.1.1      2022-07-06 [1] CRAN (R 4.3.0)
 generics         0.1.3      2022-07-05 [1] CRAN (R 4.3.0)
 ggplot2        * 3.5.0      2024-02-23 [1] CRAN (R 4.3.1)
 glue             1.7.0      2024-01-09 [1] CRAN (R 4.3.1)
 gridExtra        2.3        2017-09-09 [1] CRAN (R 4.3.0)
 gtable           0.3.4      2023-08-21 [1] CRAN (R 4.3.0)
 inline           0.3.19     2021-05-31 [1] CRAN (R 4.3.0)
 isoband          0.2.7      2022-12-20 [1] CRAN (R 4.3.0)
 jsonlite         1.8.8      2023-12-04 [1] CRAN (R 4.3.1)
 labeling         0.4.3      2023-08-29 [1] CRAN (R 4.3.0)
 lattice          0.22-6     2024-03-20 [1] CRAN (R 4.3.1)
 lifecycle        1.0.4      2023-11-07 [1] CRAN (R 4.3.1)
 loo              2.7.0      2024-02-24 [1] CRAN (R 4.3.1)
 magrittr         2.0.3      2022-03-30 [1] CRAN (R 4.3.0)
 MASS             7.3-60.0.1 2024-01-13 [1] CRAN (R 4.3.3)
 Matrix           1.6-5      2024-01-11 [1] CRAN (R 4.3.3)
 matrixStats      1.2.0      2023-12-11 [1] CRAN (R 4.3.1)
 mgcv             1.9-1      2023-12-21 [1] CRAN (R 4.3.3)
 munsell          0.5.1      2024-04-01 [1] CRAN (R 4.3.1)
 nlme             3.1-164    2023-11-27 [1] CRAN (R 4.3.3)
 numDeriv         2016.8-1.1 2019-06-06 [1] CRAN (R 4.3.0)
 pillar           1.9.0      2023-03-22 [1] CRAN (R 4.3.0)
 pkgbuild         1.4.4      2024-03-17 [1] CRAN (R 4.3.1)
 pkgconfig        2.0.3      2019-09-22 [1] CRAN (R 4.3.0)
 posterior        1.5.0      2023-10-31 [1] CRAN (R 4.3.1)
 processx         3.8.4      2024-03-16 [1] CRAN (R 4.3.1)
 ps               1.7.6      2024-01-18 [1] CRAN (R 4.3.1)
 QuickJSR         1.1.3      2024-01-31 [1] CRAN (R 4.3.1)
 R6               2.5.1      2021-08-19 [1] CRAN (R 4.3.0)
 RColorBrewer     1.1-3      2022-04-03 [1] CRAN (R 4.3.0)
 Rcpp             1.0.12     2024-01-09 [1] CRAN (R 4.3.1)
 RcppEigen        0.3.4.0.0  2024-02-28 [1] CRAN (R 4.3.1)
 RcppParallel     5.1.7      2023-02-27 [1] CRAN (R 4.3.0)
 rlang            1.1.3      2024-01-10 [1] CRAN (R 4.3.1)
 rstan          * 2.32.6     2024-03-05 [1] CRAN (R 4.3.1)
 scales           1.3.0      2023-11-28 [1] CRAN (R 4.3.1)
 StanHeaders    * 2.32.6     2024-03-01 [1] CRAN (R 4.3.1)
 tensorA          0.36.2.1   2023-12-13 [1] CRAN (R 4.3.1)
 tibble         * 3.2.1      2023-03-20 [1] CRAN (R 4.3.0)
 utf8             1.2.4      2023-10-22 [1] CRAN (R 4.3.1)
 vctrs            0.6.5      2023-12-01 [1] CRAN (R 4.3.1)
 viridisLite      0.4.2      2023-05-02 [1] CRAN (R 4.3.0)
 withr            3.0.0      2024-01-16 [1] CRAN (R 4.3.1)

 [1] /Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library

Thank you so much for anyone who could help!

Maybe related to: Can't compile simple stan code on M1 MacOS Ventura?