首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Rtools/MinGW编译鲟鱼

用Rtools/MinGW编译鲟鱼
EN

Stack Overflow用户
提问于 2014-04-30 16:41:21
回答 1查看 649关注 0票数 3

我正试图为windows编译armadillo线性代数库,但没有成功。使用armadillo-4.200.0源代码,我安装了Rtools-3.1,在路径中安装了来自MinGW的msys。

因为我的最终目标是使用Rcpp和RcppArmadillo,所以我的想法是,我需要使用相同的编译器来制作armadillo,就像编译Rcpp/RcppArmadillo文件一样。不幸的是,当试图编译鲤鱼时:

代码语言:javascript
复制
$ ./configure
[...snip...]
-- The CXX compiler identification is unknown
-- Check for working CXX compiler: cl
CMake Warning at CMakeLists.txt:3 (PROJECT):
  To use the NMake generator, cmake must be run from a shell that can use the
  compiler cl from the command line.  This environment does not contain
  INCLUDE, LIB, or LIBPATH, and these must be set for the cl compiler to
  work.

CMake Error: your CXX compiler: "cl" was not found.   Please set CMAKE_CXX_COMPILER to a valid compiler path or name.
[...snip...]

(我尝试在没有运气的情况下将CMAKE_CXX_COMPILER设置为Rtools gcc.exe。)

我相信它正在寻找visual编译器,尽管docs意味着它只能在混合或cygwin编译器环境下完成。

以下任一项:

  1. 用不同版本的编译器编译armadillo库和随后的Rcpp代码有问题吗?(Rtools-3.1的gcc版本为4.6.3,MinGW的gcc版本为4.8.1。)
  2. 是否有一种简单明了的方法,仅用Rtools集合来编译armadillo?

(Win7 x64,R-3.1.0,cygwin gcc 4.8.2,rtools 3.1,gcc 4.6.3.)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-30 17:02:18

为了避免这个问题,RcppArmadillo自己发行了Armadillo的副本。由于RcppArmadillpo是从R中使用的,它可以依靠R(和R的配置)获得LAPACK、BLAS等pp。我们不需要运行configure来使用R中的Armadillo,所以我们不这样做。

RcppArmadillo以通常的R CMD INSTALL ...方式安装;在每个版本发布之前都会对此进行测试,并且工作可靠。

正如您所说的“您的最终目标是使用Rcpp和RcppArmadillo",您实际上已经在R CMD INSTALL ...上完成了。您可以从源复制这个步骤,并测试包--所有这些都应该“正常工作”。

要记住的另一件事是“编写R扩展”和"R安装和管理“手册对编译器的说明。就R而言,您的g++ 4.8.*不存在。只有Rtools版本才重要,否则你很快就会进入非标准的土地。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23393637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档