./configure не видит/не находит файлы заголовков boost

Попытка собрать gearman из gearmand-0.33.tar.gz из Launchpad с помощью bzr в системе Fedora 64.

выполнение ./configure самостоятельно, а также использование параметра «-with-boost=/usr/include» генерирует предупреждения и ошибки, поскольку процесс настройки не может найти/найти файлы заголовков boost.

мы также удалили/переустановили файлы заголовков boost через «yum install boost*»

Любые указатели будут опробованы!

Спасибо

./configure
.
.
.
checking if more special flags are required for pthreads... no
checking for PTHREAD_PRIO_INHERIT... yes
checking for Boost headers version >= 1.39.0... yes
checking for Boost's header version... 1_41
checking for the toolset name used by Boost for g++... gcc44 -gcc
checking boost/program_options.hpp usability... no
checking boost/program_options.hpp presence... yes
configure: WARNING: boost/program_options.hpp: present but cannot be compiled
configure: WARNING: boost/program_options.hpp:     check for missing prerequisite headers?
configure: WARNING: boost/program_options.hpp: see the Autoconf documentation
configure: WARNING: boost/program_options.hpp:     section "Present But Cannot Be Compiled"
configure: WARNING: boost/program_options.hpp: proceeding with the compiler's result
configure: WARNING:     ## -------------------------------------------------- ##
configure: WARNING:     ## Report this to https://bugs.launchpad.net/gearmand ##
configure: WARNING:     ## -------------------------------------------------- ##
checking for boost/program_options.hpp... no
configure: error: cannot find boost/program_options.hpp

person tom smith    schedule 29.06.2012    source источник
comment
вы можете проверить configure.log для получения подробной информации.   -  person Jichao    schedule 14.06.2015


Ответы (3)


Только что разобрался с этой проблемой, установил gcc-c++ и решил ее.

person user1323771    schedule 11.07.2012
comment
Спасибо, у меня тоже сработало, но я бы никогда не догадался - person carpii; 16.07.2015
comment
По мере того, как мы продвигаемся к новым технологиям, вы можете вместо этого установить g++. Вопрос немного устарел. - person Acsor; 21.03.2020

Правильный вариант, вероятно, --with-boost, вы должны проверить это с помощью ./configure -h.

Кроме того, проверьте, существует ли каталог /usr/include/boost, потому что, кажется, это то, что он ищет.

Кроме того, убедитесь, что вы не используете --with-boost-include=/usr/include (и, возможно, также --with-boost-libs (или -lib)).

person Kenneth Hoste    schedule 29.06.2012
comment
Привет Кеннет. Спасибо за ответ. Оказывается, в другой части процесса сборки были повреждены данные, что повлияло на эту часть. Как только я соберу все правильно, я сделаю репост, чтобы закрыть это. - person tom smith; 01.07.2012

В моем случае сработало использование --with-boost=/path/to/root, где /path/to/root содержит include/boost.

Другими словами, --with-boost=/path/to/root/include или --with-boost=/path/to/root/include/boost оба неверны.

Я также поставил --with-boost-libdir=/path/to/root/lib64

person jfritz42    schedule 11.02.2016