Я пытаюсь собрать & установить библиотеку C ++ с помощью Cygwin. Я правильно установил зависимости библиотеки. Однако ./configure выдает ошибку:
проверка на протобуф … нет
configure: error: Требования пакета (protobuf> = 3.3) не были выполнены:
Пакет ‘protobuf’ не найден
Рассмотрите возможность изменения переменной среды PKG_CONFIG_PATH, если вы
установленное программное обеспечение в нестандартном префиксе.
Затем я проверил config.log и нашел предложение указать PKG_CONFIG_PATH
на lib/pkgconfig
каталог. Я быстро установил PKG_CONFIG_PATH
в /usr/local/lib/pkgconfig
, каталог, где protobuf.pc
находится в моей системе. Ошибка сохранилась. Некоторые проверки подобных вопросов показали, что некоторым людям приходилось использовать путь к файлам Windows, поэтому я переключился PKG_CONFIG_PATH
в c:\\cygwin64\\usr\\local\\lib\\pkgconfig
, Ошибка сохранилась. Я даже пытался установить PKG_CONFIG_PATH
в /cygdrive/c/cygwin64/usr/local/lib/pkgconfig
, Который не работал.
Что я здесь не так делаю?
(Поскольку я пока не могу комментировать, я думаю, мне нужно оставить это как ответ?)
После установки пакета libprotobuf-devel из cygwin setup.exe я смог запустить pkg-config --list-all
и посмотреть protobuf
перечислены в выводе. Также, pkg-config --print-provides protobuf
возвращается protobuf = 3.3.1
, Вы получаете тот же результат?
Я бы тоже посмотрел на configure
скрипт, чтобы увидеть, что он пытается проверить. Открытие configure
и в поисках protobuf
или же checking for protobuf
должен приблизить вас к фактической проверке. Может быть configure
пытается сделать что-то странное.
Наконец, по крайней мере, на моей установке Cygwin, у меня нет /usr/local/lib/pkgconfig
каталог. Если вы установили protobuf из исходного кода, возможно, вы могли бы попробовать пакет cygwin devel (libprotobuf-devel) и посмотреть, поможет ли это.
Других решений пока нет …