【问题标题】:Linux beginner, Where to put boost libraries?Linux初学者,在哪里放置boost库?
【发布时间】:2012-10-04 11:16:18
【问题描述】:

从 windows 迁移过来后,我对 linux 文件系统不是很熟悉,但我确实对 C++ 和 windows 中的 Boost 库有相当多的经验。切换 Fedora 17 后,谁能告诉我是否应该在某个目录中安装 Boost 以使其在 gnu 编译器中运行?

注意:如果重要的话,我不使用 IDE,我在大部分编程中都使用 vim。

【问题讨论】:

  • 任何地方,只要它在 gcc 包含路径中。
  • 如果您从 Fedora 17 中的 GUI 软件仓库安装它会更好。

标签: c++ linux boost fedora


【解决方案1】:

有几种方法可以在 linux 上设置 boost 库。

  1. 省去一些痛苦,使用包管理器安装 Boost 库。从长远来看,你会感激不尽。

  2. 如果您绝对必须自己执行,只需将其放在 gcc 包含路径中的任何位置即可。这是 /usr/local/include//usr/include/ 用于标头,/usr/local/lib//usr/lib/ 用于库

  3. 最后,如果由于某种原因无法实现,请使用带有 g++ 的 -I 开关来指定提升的路径。 (但只有在 1 和 2 不可能时才需要这样做)

【讨论】:

  • 你能详细说明一下1)吗?
  • 你运行的是哪个 linux 发行版?
  • 然后你可以做类似sudo apt-get install boost done :)
  • 哦——主要是因为你可以免费获得更新,而且你搞砸构建的可能性很小。加上几乎没有路径配置
  • 对于下一个在这里结束的人:现在,apt-get 包是libboost-all-dev(回复:@jozefg 的评论)。 see also here.
【解决方案2】:

使用你的包管理器来安装 boost 库,对于 debian ubuntu 是这样的:

sudo aptitude install libboost-system1.49.0-dev

centos6 是

yum install boost-devel

【讨论】:

  • 当包管理器不是一个可行的选项时,不回答将文件放在哪里的问题。
  • @User1291 是的,因为如果你想回答这个问题,你需要更多地了解用户所拥有的环境。这就是发行版存在的原因/
【解决方案3】:

我在使用 yum 安装 boost 时遇到了问题(最近安装了 Fedora 17).. 所以我将 boost tar 球解压缩到我的 /opt

所以g++ -I /opt/boost/boost_1_51_0 就像一个魅力。

【讨论】:

  • 你调整你的路径了吗?如果有,你添加了什么?
  • @Vérace 无需调整路径。请注意,我将完整路径传递给 g++。
【解决方案4】:

从介绍到boost:

http://www.boost.org/doc/libs/1_51_0/more/getting_started/unix-variants.html

你可以把它放在你喜欢的任何地方。然后你用这样的东西编译

c++ -I path/to/boost_1_51_0 example.cpp -o example \
   -L~/boost/stage/lib/ -lboost_regex-gcc34-mt-d-1_36

c++”例如可以是g++clang++

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-08
    • 2010-12-01
    • 2019-11-15
    • 1970-01-01
    • 1970-01-01
    • 2018-04-21
    相关资源
    最近更新 更多