在之前
Rcpp 文章中已說明利用 Rcpp 套件可在 R 程式中使用 C++ 語法,以加速 R 的執行. 本篇文章將說明如何利用 RInside 套件, 在C++程式中使用 R, 如此即可將程式編譯成執行檔.
操作環境: Windows 7 - 64位元, R-3.0.2, Rtools version 3.1.0, 參考以下執行步驟:
- 第一步驟當然是要安裝 R, 其安裝目錄不要使用預設值, 建議為 C:\R\R-3.0.2
- 安裝 Rtools 工具, 直接安裝於預設目錄即可 C:\Rtools
- 在R程式中安裝 RInside 套件 install.packages("RInside")
- 檢視 RInside 套件中內建範例, 例如: rinside_sample3.cpp, 該範例有使用 lm 函數:
lm(Fertility ~ . , data = swiss)
- 命令提視字元視窗
- 環境設定內容:
SET PATH=C:\R\R-3.0.2\bin\x64;C:\Rtools\bin;C:\Rtools\gcc-4.6.3\bin;%PATH%
SET R_HOME=C:\R\R-3.0.2
SET PKG_LIBS='Rscript -e "Rcpp:::LdFlags()"'
SET PKG_CPPFLAGS='Rscript -e "Rcpp:::CxxFlags()"'
- 編譯程式
make -f Makefile.win rinside_sample3
圖1: 設定環境與編譯程式
圖2: 顯示結果
註: 目前僅使用 Dev-C++ 4.9.9.2 測試, Microsoft Visual Studio, Qt library 將再增加...