【发布时间】:2017-10-12 09:01:27
【问题描述】:
我正在准备一个包(使用 Rcpp 和 RcppArmadillo)提交给 CRAN。我正在使用 Travis CI,并包含以下内容以更彻底地测试我的包:
os:
- linux
- osx
compiler:
- clang
- gcc
然而,当在 OS X 上使用 clang 时,这会产生(似乎很熟悉)错误
* installing *source* package ‘my_pkg’ ...
** libs
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I"/Users/travis/R/Library/Rcpp/include" -I"/Users/travis/R/Library/RcppArmadillo/include" -I/usr/local/include -fopenmp -fPIC -Wall -g -O2 -c RcppExports.cpp -o RcppExports.o
clang: error: unsupported option '-fopenmp'
make: *** [RcppExports.o] Error 1
ERROR: compilation failed for package ‘pkg’
* removing ‘/Users/travis/build/my_user/pkg/pkg.Rcheck/pkg’
通过适当地调整我的travis.yml 文件以遵守here 建议的解决方法之一,我似乎可以避免这个问题。
我的问题是:如果我想把它放在 CRAN 上该怎么办? Jim 的建议在我看来只是本地的,我是否必须在我的包中做一些事情来自动避免用户的编译问题才能被 CRAN 接受?
编辑:更具体一点,我可以将CXX=g++ 放在Makevars 中,还是不赞成(这样就足够了)?
【问题讨论】:
标签: r clang travis-ci rcpp cran