在Linux集群上安装R`preview`包:编译问题?
我希望测试R的性能,更具体地说是在具有Intel Xeon Phi协处理器的HPC集群的预测包中的一些例程.据我所知,系统管理员按照英特尔网站上的说明从源代码构建了R / 3.2.5:
https://software.intel.com/en-us/articles/build-r-301-with-intel-c-compiler-and-intel-mkl-on-linux
因此R工作,包括devtools,data.table,dplyr,ggplot2,Rcpp,RcppArmadillo的软件包的安装可以使用install.packages在R会话中执行,以安装到本地用户特定的库.我提到这些包的原因是它们都需要某种形式的编译,因此我需要在我的.bashrc文件中包含行模块load intel / 15.2.164来加载编译器. 但是,当我来安装预测包时,我失败了.有一个很长的文本输出流(见下文),但总的来说,似乎与编译器相关的某些内容失败了: /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(115): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value + __y._M_value; 我担心我对编译软件和管理/安装知之甚少:我之前在Mac或大学Linux集群上从未发生过这些问题. > install.packages("forecast") Installing package into '/gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5' (as 'lib' is unspecified) trying URL 'https://www.stats.bris.ac.uk/R/src/contrib/forecast_7.1.tar.gz' Content type 'application/x-gzip' length 196896 bytes (192 KB) ================================================== downloaded 192 KB * installing *source* package 'forecast' ... ** package 'forecast' successfully unpacked and MD5 sums checked ** libs icpc -I/gpfs/stfc/local/apps/intel/R/3.2.5/lib64/R/include -DNDEBUG -I/gpfs/stfc/local/apps/intel/utilities/include -I"/gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include" -I"/gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/RcppArmadillo/include" -fpic -O2 -c calcBATS.cpp -o calcBATS.o icpc -I/gpfs/stfc/local/apps/intel/R/3.2.5/lib64/R/include -DNDEBUG -I/gpfs/stfc/local/apps/intel/utilities/include -I"/gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include" -I"/gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/RcppArmadillo/include" -fpic -O2 -c calcTBATS.cpp -o calcTBATS.o icpc -I/gpfs/stfc/local/apps/intel/R/3.2.5/lib64/R/include -DNDEBUG -I/gpfs/stfc/local/apps/intel/utilities/include -I"/gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include" -I"/gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/RcppArmadillo/include" -fpic -O2 -c etsTargetFunction.cpp -o etsTargetFunction.o In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/Rcpp.h(27),from etsTargetFunction.h(3),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(69): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible _M_value = __z._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(77): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible _M_value = __z._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(115): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value + __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(115): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value + __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(120): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value - __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(120): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value - __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(125): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value * __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(125): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value * __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(130): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value / __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(130): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value / __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(134): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return -__x._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(141): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value == __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(141): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value == __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(146): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value != __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(146): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value != __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(150): error #308: member "std::complex<float>::_M_value" (declared at line 1157 of "/usr/include/c++/4.4.7/complex") is inaccessible return ~__z._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(187): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value + __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(187): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value + __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(192): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value - __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(192): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value - __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(197): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value * __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(197): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value * __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(202): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value / __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(202): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value / __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(206): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return -__x._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(211): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value == __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(211): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value == __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(216): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value != __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(216): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return __x._M_value != __y._M_value; ^ In file included from /gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/Rcpp/include/RcppCommon.h(64),from etsTargetFunction.cpp(7): /gpfs/stfc/local/apps/intel/intel_cs/2015.2.164/composer_xe_2015.2.164/compiler/include/complex(220): error #308: member "std::complex<double>::_M_value" (declared at line 1302 of "/usr/include/c++/4.4.7/complex") is inaccessible return ~__z._M_value; ^ compilation aborted for etsTargetFunction.cpp (code 2) make: *** [etsTargetFunction.o] Error 2 ERROR: compilation failed for package 'forecast' * removing '/gpfs/stfc/local/HCPhi012/mjw01/mjw93-mjw01/library/R/3.2.5/forecast' The downloaded source packages are in '/tmp/RtmppswtIw/downloaded_packages' Warning message: In install.packages("forecast") : installation of package 'forecast' had non-zero exit status 似乎关于R和Xeon Phi协处理器以及关于StackOverflow的单个问题的文档很少,但仍未得到答复:R Parallel Processing with Xeon Phi,minimal code changes? 如果有人能指出我正确的方向,我将非常感激.非常感谢. 解决方法
我曾经有同样的问题.似乎RcppArmadillo以某种方式获得#pragma警告(推送)和#pragma警告(pop)失衡.
在处理英特尔的复合体时,您必须禁用警告308. 最简单的方法是添加到R的Makeconf: CXXFLAGS = -diag-disable 308 一劳永逸地解决问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |