Я использую Travis-CI, который использует Ubuntu 14.04 Trusty VM для запуска сценария. Для правильной работы скрипту необходимо установить пакет protobuf-compiler
версии 3+ и соответствующий пакет libprotobuf-dev
. К сожалению, выполнение очевидного apt-get install protobuf-compiler libprotobuf-dev
дает мне версию 2.5, которая слишком старая для компиляции сценария.
К счастью, существует PPA , который предоставляет версию 3.4 для Trusty. Я использовал add-apt-repository ppa: maarten-fonville / protobuf
, чтобы добавить PPA с соответствующим apt-get update
, но я все еще получил старую версию из архива . ubuntu.com
, а не версию PPA.
Я попытался назначить PPA более высокий приоритет, используя этот / etc / apt / preferences
файл , как описано здесь , но у меня все равно была версия 2.5.
Есть журнал моего сценария с использованными командами.Строка 506 добавляет PPA, строка 615 копирует файл настроек
, строка 617 делает apt update
, а строка 719 устанавливает (неправильные) пакеты. В развернутой строке 7 отображается различная системная информация.
Как установить protobuf-compiler
версию 3+ на Ubuntu Trusty?
Пакет доступен от упомянутого PPA по состоянию на вчера (1/27/18) из http://ppa.launchpad.net/maarten-fonville/protobuf/ubuntu/pool/main/p/protobuf/ и для 64-разрядных и для 32-разрядных версий надежного человека. Я не уверен почему protobuf-compiler
не показывает как являющийся доступным на странице панели запуска.
Однако sudo apt install protobuf-compiler
установит его, и это - зависимости от PPA. Я верю вышеупомянутым зависимостям конкретно libprotobuf15
и libprotoc15
причина, почему она не установила бы автономный с dpkg -i
если загружено непосредственно из http://ppa.launchpad.net/maarten-fonville/protobuf/ubuntu/pool/main/p/protobuf/protobuf-compiler_3.5.1.1-0~maarten0+trusty0_amd64.deb
Источники:
Тестирование
@nwp комментируют здесь