7

Fedora 64 システムで bzr を使用して、Launchpad の gearmand-0.33.tar.gz から Gearman をビルドしようとしています。

自分で ./configure を実行し、「-with-boost=/usr/include」パラメーターを使用すると、configure プロセスがブースト ヘッダー ファイルを見つけたり見つけたりできないように見えるため、警告とエラーが生成されます。

同様に、「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
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 に答える