7

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

自己执行 ./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
4

3 回答 3

12

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

于 2012-07-11T20:20:54.667 回答
2

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

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

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

于 2012-06-29T05:24:42.737 回答
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

于 2016-02-11T00:05:11.403 回答