./configure not seeing / finds boost header files

时间:2012-06-29 01:07:33

标签: boost compiler-construction fedora gearman

尝试在Fedora 64系统上使用bzr从Launchpad的gearmand-0.33.tar.gz构建gearman。

通过tiself执行./configure,以及使用“-with-boost = / usr / include”参数生成警告错误,因为配置过程似乎无法找到/找到boost头文件。

我们已经通过“yum install boost *”删除/重新安装了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

3 个答案:

答案 0 :(得分:11)

刚刚解决了这个问题,安装了gcc-c ++并解决了它

答案 1 :(得分:2)

正确的选项可能是--with-boost,您应该使用./configure -h进行检查。

另外,检查目录/usr/include/boost是否存在,因为这似乎是它正在寻找的目的。

此外,请确保您不应该使用--with-boost-include=/usr/include(也可能--with-boost-libs(或-lib)。

答案 2 :(得分:0)

就我而言,使用--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