我在OS X 10.9.2上安裝了帶有mac端口的R 3.0.3。我使用sudo R CMD INSTALL〜/ Downloads/RInside_0.2.11.tgz(類似於Rcpp_0.11.1.tar)安裝了RInside。我正在嘗試從http://dirk.eddelbuettel.com/code/rinside.html編譯一個簡單的RInside幫助世界代碼。我試圖用Mac OS X上的RInside
g++ main.cpp -I/Users/robogos/Library/R/3.0/library/RInside/include/ -I/Users/robogos/Library/R/3.0/library/Rcpp/include/ -I/opt/local/Library/Frameworks/R.framework/Versions/3.0/Resources/include/
和我得到的錯誤的一個長長的清單:
Undefined symbols for architecture x86_64:
"_REprintf", referenced from:
Rcpp::Rstreambuf<false>::xsputn(char const*, long) in main-4b77b4.o
Rcpp::Rstreambuf<false>::overflow(int) in main-4b77b4.o
"_R_BindingIsLocked", referenced from:
Rcpp::Environment_Impl<Rcpp::PreserveStorage>::bindingIsLocked(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const in main-4b77b4.o
"_R_FlushConsole", referenced from:
Rcpp::Rstreambuf<false>::sync() in main-4b77b4.o
Rcpp::Rstreambuf<true>::sync() in main-4b77b4.o
"_R_NilValue", referenced from:
Rcpp::wrap(char const*) in main-4b77b4.o
"_R_UnboundValue", referenced from:
Rcpp::Environment_Impl<Rcpp::PreserveStorage>::exists(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const in main-4b77b4.o
"_Rf_defineVar", referenced from:
Rcpp::Environment_Impl<Rcpp::PreserveStorage>::assign(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, SEXPREC*) const in main-4b77b4.o
"_Rf_findVarInFrame", referenced from:
Rcpp::Environment_Impl<Rcpp::PreserveStorage>::exists(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const in main-4b77b4.o
"_Rf_install", referenced from:
Rcpp::Environment_Impl<Rcpp::PreserveStorage>::assign(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, SEXPREC*) const in main-4b77b4.o
Rcpp::Environment_Impl<Rcpp::PreserveStorage>::exists(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const in main-4b77b4.o
Rcpp::Environment_Impl<Rcpp::PreserveStorage>::bindingIsLocked(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const in main-4b77b4.o
"_Rf_mkString", referenced from:
Rcpp::wrap(char const*) in main-4b77b4.o
"_Rprintf", referenced from:
Rcpp::Rstreambuf<true>::xsputn(char const*, long) in main-4b77b4.o
Rcpp::Rstreambuf<true>::overflow(int) in main-4b77b4.o
"RInside::parseEvalQ(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
_main in main-4b77b4.o
"RInside::RInside(int, char const* const*, bool, bool, bool)", referenced from:
_main in main-4b77b4.o
"RInside::~RInside()", referenced from:
_main in main-4b77b4.o
"RInside::operator[](std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
_main in main-4b77b4.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我已經試了一下德克Eddelbuettel建議,但現在我得到:
Error in dyn.load(file, DLLpath = DLLpath, ...) :
unable to load shared object '/Library/Frameworks/R.framework/Versions/3.0/Resources/library/stats/libs/stats.so':
dlopen(/Library/Frameworks/R.framework/Versions/3.0/Resources/library/stats/libs/stats.so, 6): Symbol not found: __gfortran_pow_r8_i4
Referenced from: /Library/Frameworks/R.framework/Versions/3.0/Resources/lib/libRlapack.dylib
Expected in: /Applications/MATLAB_R2013a.app/sys/os/maci64//libgfortran.2.dylib
in /Library/Frameworks/R.framework/Versions/3.0/Resources/lib/libRlapack.dylib
During startup - Warning message:
package ‘stats’ in options("defaultPackages") was not found
Error in dyn.load(file, DLLpath = DLLpath, ...) :
unable to load shared object '/Library/Frameworks/R.framework/Versions/3.0/Resources/library/stats/libs/stats.so':
dlopen(/Library/Frameworks/R.framework/Versions/3.0/Resources/library/stats/libs/stats.so, 6): Symbol not found: __gfortran_pow_r8_i4
Referenced from: /Library/Frameworks/R.framework/Versions/3.0/Resources/lib/libRlapack.dylib
Expected in: /Applications/MATLAB_R2013a.app/sys/os/maci64//libgfortran.2.dylib
in /Library/Frameworks/R.framework/Versions/3.0/Resources/lib/libRlapack.dylib
During startup - Warning message:
package ‘stats’ in options("defaultPackages") was not found
Error in dyn.load(file, DLLpath = DLLpath, ...) :
unable to load shared object '/Library/Frameworks/R.framework/Versions/3.0/Resources/library/stats/libs/stats.so':
dlopen(/Library/Frameworks/R.framework/Versions/3.0/Resources/library/stats/libs/stats.so, 6): Symbol not found: __gfortran_pow_r8_i4
Referenced from: /Library/Frameworks/R.framework/Versions/3.0/Resources/lib/libRlapack.dylib
Expected in: /Applications/MATLAB_R2013a.app/sys/os/maci64//libgfortran.2.dylib
in /Library/Frameworks/R.framework/Versions/3.0/Resources/lib/libRlapack.dylib
During startup - Warning message:
package ‘stats’ in options("defaultPackages") was not found
Error in dyn.load(file, DLLpath = DLLpath, ...) :
unable to load shared object '/Library/Frameworks/R.framework/Versions/3.0/Resources/library/stats/libs/stats.so':
dlopen(/Library/Frameworks/R.framework/Versions/3.0/Resources/library/stats/libs/stats.so, 6): Symbol not found: __gfortran_pow_r8_i4
Referenced from: /Library/Frameworks/R.framework/Versions/3.0/Resources/lib/libRlapack.dylib
Expected in: /Applications/MATLAB_R2013a.app/sys/os/maci64//libgfortran.2.dylib
in /Library/Frameworks/R.framework/Versions/3.0/Resources/lib/libRlapack.dylib
During startup - Warning message:
package ‘stats’ in options("defaultPackages") was not found
make: Nothing to be done for `rinside_sample0.cpp'.
我有看到建議像!unset DYLD_LIBRARY_PATH;
,但我不知道如何做到這一點在我的情況。
您是否從源代碼構建了RInside?如果沒有,請嘗試。 –
我已經從http://cran.r-project.org/web/packages/RInside/index.html下載並使用'R CMD INSTALL〜/ Downloads/RInside_0.2.11.tgz'進行安裝。但是,R是使用Macports安裝的。 – robogos
通過'R CMD INSTALL RInside_0.2.11.tar.gz'安裝_from source_。請注意'tar.gz'而不是'.tgz'。 –