我希望php的卷曲在travis-ci上使用GnuTls 3.1.28而不是默认的GnuTls 2.12。 我设置了一个实验性的ec2实例,我的编译引导我成功使用gnutls3,但这对travis-ci工作者不起作用。
运行
ldd /usr/lib/php5/20090626/curl.so|grep gnutls
在ec2实例上产生
/usr/lib/php5/20090626/curl.so: /usr/local/lib/libcurl.so.4: no version information available (required by /usr/lib/php5/20090626/curl.so)
libgnutls.so.28 => /usr/local/lib/libgnutls.so.28 (0x00007f58946e5000)
显示它正在引用我编译的GnuTls 3.1.28
但是对travis-ci工人的收益率
/usr/lib/php5/20090626/curl.so: /usr/local/lib/libcurl.so.4: no version information available (required by /usr/lib/php5/20090626/curl.so)
libgnutls.so.26 => /usr/lib/x86_64-linux-gnu/libgnutls.so.26 (0x00002aca991d0000)
显示它仍在引用GnuTls 2.12(完整日志here)
var_dump(curl_version())证实了这一点。
找到我的特定命令here
我缺少哪些特定于travis-ci的工作人员?
答案 0 :(得分:0)
事实证明,在travis-ci工作者上安装一个单独的php CLI,而不是已经拥有的那个(在phpenv中)解决了它。 php二进制文件/ usr / bin / php5正确链接到我在/ usr / local / lib中安装的curl和gnutls库, 但phpenv自动使用的二进制文件并没有。