【问题标题】:find boost library path查找boost库路径
【发布时间】:2011-09-03 16:58:25
【问题描述】:

我正在使用 boost program_options 编写程序,我按照以下说明进行操作:http://www.boost.org/doc/libs/1_47_0/more/getting_started/unix-variants.html#build-a-simple-program-using-boost,一切都很好。现在的重点是我想分发源代码,所以我的问题是如何找到 boost 库在其他 linux 机器上的安装位置(假设它们是)。例如,在我的电脑上,它们位于 /usr/lib64 中,但在另一台机器上,它们安装在非标准位置。

我不想使用像 autotools 这样的工具,我使用的是一个简单的 Makefile。

boost 安装是否提供了一些工具来查找库的位置?有一些环境变量吗?

【问题讨论】:

  • 你不能用一个简单的 Makefile 来做到这一点。你需要像 autotools 这样的东西。

标签: c++ boost makefile


【解决方案1】:

您要么需要使用像 autotools 这样的工具(我强烈推荐 CMake,它很棒),要么将它放在编译器可以找到的地方。但是你不能为他们配置每个人的系统,所以通常后者是不够的。

【讨论】:

  • cmake 和 autools 如何找到库的位置?有没有办法重新实现它?
  • @wiso CMake 有一堆预定义的模块,通常可以确定它们在系统上的安装位置。因此,在您的 CMake 文件中,您将其告知 find_package(Boost...,然后它将文件的位置放入一些魔术变量中,例如 Boost_LIBRARIES,以便您可以将它们添加到目标中。我相信这个网站上有关于如何设置的示例。
  • @Tom:我的问题不是“如何使用 cmake 来...?”,而是“如何使用 cmake 来做”。我不能使用cmake,它没有安装在最终的机器上,我无法安装它。没有类似的可执行文件:find-boost-lib 与 boost 库一起安装?例如,ROOT 库提供了root-config 可执行文件来查找它们的安装位置。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多