我正在开发一个名为DescObs
(https://github.com/MaaniBeigy/DescObs)的R包。它从conf.limits.nct
导入MBESS
函数,该函数本身依赖于另一个称为gsl
的程序包。对于R CMD check
和DescObs
在Travis
持续集成平台(https://travis-ci.org/MaaniBeigy/DescObs)评估的Linux机器上的安装,根本没有问题。但是,AppVeyor
fails:
** libs
*** arch - i386
C:/Rtools/mingw_32/bin/gcc -I"c:/R/include" -DNDEBUG -I/include -O3 -Wall -std=gnu99 -mtune=generic -c airy.c -o airy.o
airy.c:1:29: fatal error: gsl/gsl_sf_airy.h: No such file or directory
#include <gsl/gsl_sf_airy.h>
^
compilation terminated.
make: *** [c:/R/etc/i386/Makeconf:208: airy.o] Error 1
ERROR: compilation failed for package 'gsl'
* removing 'c:/RLibrary/gsl'
Error in i.p(...) :
(converted from warning) installation of package 'gsl' had non-zero exit status
Calls: <Anonymous> ... with_rprofile_user -> with_envvar -> force -> force -> i.p
Execution halted
Command exited with code 1
我也尝试了Building an R package that uses the GSL on Windows中推荐的解决方案,但没有帮助。我还使用mingw-w64
和gcc-4.6.3
对其进行了编译,它们都显示相同的错误。
此外,我尝试通过- cmd: vcpkg install gsl:x64-windows
安装,但确实显示了相同的错误。在这里,您可以看到我的appveyor.yml。
你有什么想法吗?
答案 0 :(得分:2)
幸运的是,我以前的appveyor.yml终于可以构建它:
install:
- ps: Bootstrap
- cmd: git submodule update --init --recursive
- cmd: git clone https://github.com/CxxTest/cxxtest
- cmd: cd c:\tools\vcpkg
- cmd: vcpkg integrate install
- cmd: vcpkg install gsl:x64-windows
- cmd: vcpkg install fftw3:x64-windows
- cmd: cd "%APPVEYOR_BUILD_FOLDER%"
environment:
global:
USE_RTOOLS: true
NOT_CRAN: true
_R_CHECK_FORCE_SUGGESTS: true
_R_CHECK_CRAN_INCOMING_: true
#R_CHECK_ARGS: "--run-dontrun"
matrix:
- R_VERSION: devel
R_ARCH: x64
GCC_PATH: gcc-4.6.3
我不知道确切原因,但works很高兴。