Я хочу, чтобы curl 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 (полный журнал Вот )
Var_dump (curl_version ()) подтверждает это.
Мои конкретные команды найдены Вот
Есть ли что-то конкретное для работников travis-ci, по которым я скучаю?
Оказалось, что установка отдельного php CLI на travis-ci работника, отличного от тех, которые у него уже были (в phpenv), решила это для меня.
Двоичный файл php / usr / bin / php5 правильно связывался с библиотеками curl и gnutls, которые я установил в / usr / local / lib,
но двоичные файлы, которые автоматически использовал phpenv, этого не сделали.
Других решений пока нет …