2

travis-ci の php の curl で、デフォルトの GnuTls 2.12 の代わりに GnuTls 3.1.28 を使用するようにします。実験的な 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 を参照していることを示しています (完全なログはこちら) 。

var_dump(curl_version()) はこれを確認します。

私の特定のコマンドはここにあります

私が見逃しているtravis-ciの労働者に特有のものはありますか?

4

1 に答える 1

0

すでに(phpenvで)持っていたもの以外の別のphp CLIをtravis-ciワーカーにインストールすると、解決したことがわかりました。PHP バイナリ /usr/bin/php5 は、/usr/local/lib にインストールした curl および gnutls ライブラリに正しくリンクしていましたが、phpenv が自動的に使用するバイナリはリンクしていませんでした。

于 2015-06-10T06:17:56.497 に答える