Chapter 16 Armadillo 불러오기
R에서 install.package("RcppArmadillo")
으로 RcppArmadillo
을 설치하고, C++ 파일에서 Armadillo
을 사용할 떄에는 다음과 같이 불러올 수 있다.
참고로 RcppArmadillo
을 불러오면 자동으로 Rcpp
까지 불러오기 떄문에 따로 #include <Rcpp.h>
를 추가할 필요는 없다. (오히려 Rcpp
을 추가로 불러오게 되면 에러가 발생한다!)
16.1 Mac에서 오류 발생 시
Mac에서 RcppArmadillo
를 사용하여 C++ 코드를 컴파일 했을 때, 아래의 오류가 발생할 수 있다.
library not found for -lgfortran
이는 Fortran 라이브러리 경로를 찾지 못했을 때 발생하며, 환경변수를 설정하여 해결할 수 있다.
터미널에서 아래 코드로 gfortran
이 설치되어 있으면 다음으로 넘어가고,
gfortran --version
설치가 되어있지 않을 경우에는 아래 명령어로 gfortran
을 설치해준다.
brew install gfortran
다음으로 “~/.R/Makevars” 파일을 생성해주고
mkdir -p ~/.R
touch ~/.R/Makevars
“~/.R/Makevars” 파일을 열어 아래의 내용을 추가한 후 저장한다.
FLIBS = -L/usr/local/opt/gcc/lib/gcc/current -lgfortran -lquadmath -lm
이상이 없다면 R을 종료하고 다시 실행하게 되면 에러가 발생하지 않을 것이다.