CMake ExternalProject_Add 代理设置

3
我一直成功地使用CMake来执行构建,使用ExternalProject_Add函数,但是我的公司最近安装了代理服务器...这破坏了上述的构建脚本。
下载步骤在提取阶段失败,因为下载的tarball只是代理服务器的重定向请求(至少我认为它所获取的小tarball中包含这个)。
我在CMake邮件列表中找到了这篇post。我想如果对于file()命令有效,那么对于ExternalProject_Add()命令也可能有效。我设置了http_proxyHTTP_PROXY环境变量,但仍然收到相同的错误。我考虑用wget调用覆盖DOWNLOAD_COMMAND参数,因为这个命令似乎能够遵循代理设置。然而,我想知道是否有更好的方法。

更新 1: 我检查了小的 tarball 的内容,它包含 HTML;但是,它是一个需要身份验证的通知。我不确定为什么需要身份验证,因为我没有输入任何 wget 的登录信息。

wget 显示以下输出:

Resolving webproxy... 10.0.1.50 
Connecting to webproxy|10.0.1.50|:80... connected. 
Proxy request sent, awaiting response... 200 OK
Download begins here...
更新2: 我也注意到使用新代理设置时,apt-getsvn都无法正常工作,但git可以... svn 抱怨 "服务器发送了意外的返回值 (307 代理重定向)..." 非常混乱...

谢谢!

1个回答

2

我正在使用CMake 2.8.5;我一定会尝试使用CURLOPT_FOLLOWLOCATION - mevatron
我尝试了 export CURLOPT_FOLLOWLOCATION=1,但是我仍然得到相同的错误。这是你应该设置的方式吗? - mevatron
你不应该设置任何东西,它应该自动跟随重定向。在那个提交之前,它没有这样做。 - DLRdave
结果证明,过于热心的网络管理员是问题所在 :) 所以,我还是会接受你的帖子 :D - mevatron
“现在你永远不能太小心了。” - 一位网络管理员 - DLRdave

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接