Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mac中Rcpp包中的dyn.load错误_R_Macos_Installation_Clang_Rcpp - Fatal编程技术网

mac中Rcpp包中的dyn.load错误

mac中Rcpp包中的dyn.load错误,r,macos,installation,clang,rcpp,R,Macos,Installation,Clang,Rcpp,我在加载编译对象Rcpp编译对象时遇到问题。我正在从源代码处编译RcppSMC包。我 Error in dyn.load("mylib.so") : unable to load shared object '/Users/avi/softwares/RcppSMC/src/mylib.so': dlopen(/Users/avi/softwares/RcppSMC/src/mylib.so, 6): Symbol not found: __ZNSoD0Ev Referenced

我在加载编译对象Rcpp编译对象时遇到问题。我正在从源代码处编译RcppSMC包。我

Error in dyn.load("mylib.so") : 
  unable to load shared object '/Users/avi/softwares/RcppSMC/src/mylib.so': 
  dlopen(/Users/avi/softwares/RcppSMC/src/mylib.so, 6): Symbol not found: __ZNSoD0Ev
  Referenced from: /Users/avi/softwares/RcppSMC/src/mylib.so
  Expected in: flat namespace
 in /Users/avi/softwares/RcppSMC/src/mylib.so 
我正在使用铿锵来编译下面的verson。我认为这是一个编译问题,因为如果我从CRAN dyn下载mac os二进制文件,load可以工作

Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-darwin13.0.0 

clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I../inst/include -I/usr/local/include -I"/Users/avi/Library/R/3.0/library/Rcpp/include"   -fPIC  -g -O3 -pipe -std=c++0x -Wall -pedantic -c blockpfgaussianopt.cpp -o blockpfgaussianopt.o
  .....
clang++ -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/usr/local/lib -L/usr/local/lib -o mylib.so blockpfgaussianopt.o history.o pflineart.o pfnonlinbs.o smc-exception.o /Users/avi/Library/R/3.0/library/Rcpp/lib/libRcpp.a -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
安装到/Users/avi/Library/R/3.0/Library/RcppSMC/libs


这是一个奇怪的问题,因为sourceCpp正在计算机中工作。

如果您试图安装一个从源代码链接到
Rcpp
的软件包,您可能还需要从源代码安装
Rcpp


假设您使用的是OS X Mavericks,在StackOverflow上也有类似的帖子,但都存在类似的问题。

我的一位同事也遇到了同样的问题

我们尝试了在互联网上找到的所有可能的解决方案

我们最终得出结论,是新版本的Mac(Mojave)引发了此类问题

他降级到Sierra并重新安装了所有设备。
这解决了他的问题。

谢谢凯文。我真傻。我确实读过关于编译Rcpp的文章,应该从源代码安装。但忽视了它,认为它是推荐的,没有必要的。从源代码安装时,它肯定工作顺利。没问题。由于旧的(和CRAN使用的)编译器和新的
clang
编译器之间的ABI兼容性,它直到最近才成为MacOSX Mavericks用户所必需的。希望问题能通过R3.1.0解决。我也遇到过同样的问题,而你的解决方案正是我为了让它正常工作所做的。感谢您的发帖,因为我最初认为有一个我没有发现的特定MacOS版本的解决方案。可能有一些解决方案,但我们没有找到:/