我正在尝试安装 gearmand(从源代码安装),我需要 boost headers 版本 >= 1.39。为此,我安装了、libboost1.49-dev
和其他依赖项。libboost-program-options1.49.0
uuid-dev
是否还有其他需要安装的软件包?因为每次我运行./configure
准备 gearmand 时,它都会告诉我需要 Boost 标头版本 >= 1.39。我不知道为什么它找不到标头,因为目录/usr/includes/boost/
存在。
我错过了什么?
答案1
为了满足所有构建依赖关系,我的方法始终是首先要求 APT 为存储库中的版本安装它们。方法如下:
sudo apt-get build-dep gearman-job-server
这可能会安装一些您忽略的软件包,但如果您尝试从源代码编译的版本有不同的要求,它可能不会安装依赖项。我怀疑您只是缺少像libboost-thread-dev
和这样的软件包libboost-program-options-dev
,上面的命令会处理这些软件包。
所有受支持的 Ubuntu 版本中的 Boost 版本都完全可以满足您的 1.39 及更高版本要求。
答案2
Boost 提供免费的可移植同行评审的 C++ 库。重点是与 C++ 标准库配合良好的可移植库。
要下载带有完整库的 boost 版本 1.53.0,请访问版本 1.53.0。
Boost 1.39.0 附带了以下新库:Signals2。更新的库:Asio、Flyweight、Foreach、Hash、Interprocess、Intrusive、Program.Options、Proto、PtrContainer、Range、Unordered、Xpressive。更新的工具:Boostbook、Quickbook。
或者,您可以通过以下方式安装 Gearmand,只需按下键盘上的Ctrl+ Alt+T打开终端即可。打开后,运行以下命令:
sudo add-apt-repository ppa:gearman-developers/ppa
sudo apt-get update
sudo apt-get install gearman-job-server
这将安装所需的库。
来源:Boost