Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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
Url Travis CI错误:安装nloptr pkg(r pkg检查)_Url_Travis Ci_Nlopt - Fatal编程技术网

Url Travis CI错误:安装nloptr pkg(r pkg检查)

Url Travis CI错误:安装nloptr pkg(r pkg检查),url,travis-ci,nlopt,Url,Travis Ci,Nlopt,我尝试使用travis ci检查我的r包是否正确。我的软件包应该导入r pkgnloptr。travis ci将在“r”中给出错误:“oldrel”分支。我在这里显示错误: configure: Need to download and build NLopt trying URL 'http://ab-initio.mit.edu/nlopt/nlopt-2.4.2.tar.gz' Warning in download.file(url = "http://ab-initio.mit.edu

我尝试使用travis ci检查我的r包是否正确。我的软件包应该导入r pkg
nloptr
。travis ci将在“r”中给出错误:“oldrel”分支。我在这里显示错误:

configure: Need to download and build NLopt
trying URL 'http://ab-initio.mit.edu/nlopt/nlopt-2.4.2.tar.gz'
Warning in download.file(url = "http://ab-initio.mit.edu/nlopt/nlopt-2.4.2.tar.gz",  :
  "internal" method cannot handle https redirection to: 'https://github.com/stevengj/nlopt/releases/download/nlopt-2.4.2/nlopt-2.4.2.tar.gz'
switching to method = "libcurl" because of redirection to https
downloaded 0 bytes
Warning in download.file(url = "http://ab-initio.mit.edu/nlopt/nlopt-2.4.2.tar.gz",  :
  URL 'https://github-production-release-asset-2e65be.s3.amazonaws.com/12412122/5dd09f0a-6d59-11e7-9685-af3ea1aac9be?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20180127%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20180127T205849Z&X-Amz-Expires=300&X-Amz-Signature=e6604ca4110973e167461335f8ffe6e340882219fd2a4ebc2a6065d4e416cc2e&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dnlopt-2.4.2.tar.gz&response-content-type=application%2Foctet-stream': status was '403 Forbidden'
Error in download.file(url = "http://ab-initio.mit.edu/nlopt/nlopt-2.4.2.tar.gz",  : 
  cannot download all files
Execution halted
/bin/tar: This does not look like a tar archive
gzip: stdin: unexpected end of file
/bin/tar: Child returned status 1
/bin/tar: Error is not recoverable: exiting now
Warning message:
In untar(tarfile = "nlopt-2.4.2.tar.gz") :
  '/bin/tar -xf 'nlopt-2.4.2.tar.gz'' returned error code 2
configure: Starting to install library to /tmp/RtmpCm39nC/R.INSTALL37f361a5b719/nloptr/nlopt-2.4.2
./configure: line 3325: cd: nlopt-2.4.2: No such file or directory

因此,问题是travis ci不知道如何安装这个
nlopt
,这是r pkg
nloptr
所需要的。(travis ci无法通过给定的url下载
nlopt
)。幸运的是,我们可以通过将此代码添加到
.travis.yml
文件来告诉travis ci另一种方法,这有助于travis ci通过另一种方法安装nlopt

apt_packages:
  - libnlopt-dev

现在,特拉维斯ci可以很好地为您服务了

您应该在
.travis.yml
中添加以下内容,因为它可以在基于容器的基础设施或标准基础设施中使用,而胡朝然的回答仅适用于标准基础设施:

addons:
  apt:
    packages:
      - libnlopt-dev

请参阅travis docs,了解为什么这个答案会更普遍地起作用:

毫无疑问,Luke会给我们一个更专业的建议!