【问题标题】:why can't I to install boost in /usr/include?为什么我不能在 /usr/include 中安装 boost?
【发布时间】:2012-02-19 04:09:25
【问题描述】:

我正在尝试将 boost 安装到包含目录中,以避免在每个 g++ 编译器调用中使用 -I 标志,我使用以下命令行安装:./bjam --prefix=/usr/include install 看到--prefix 值,它安装在/home/myusername,为什么? 提前致谢。

【问题讨论】:

  • 你是以 root 用户身份运行它,还是其他有权限写入 /usr/include 的用户?

标签: c++ boost build


【解决方案1】:

您需要 root 权限才能在 /usr/include 中安装。

实际上,您的系统帮了您一个忙,不让您这样做。 --prefix 选项表示在哪里安装所有东西——头文件、库、可执行文件、文档等。例如,头文件将安装在 /usr/include/include 中,而 /usr/include/include 将不会安装在您的编译器的搜索路径。

免责声明::假设./bjam --prefix=... 的行为类似于./configure --prefix=...。我实际上并没有使用bjam。如果bjam--prefix 选项有其他含义,请纠正我。

根据您的系统,您可以从存储库安装 Boost,而不是从源代码构建它。例如,对于 Debian 或 Ubuntu,sudo apt-get install libboost 之类的东西可能会起作用。

请注意,我说过类似 的话;似乎 Boost 由许多软件包组成; apt-cache search boost,或者更好的是,做一个谷歌搜索,看看如何在你的特定系统上安装 Boost。

【讨论】:

    【解决方案2】:

    尝试运行

    sudo ./bjam
    

    这样做应该以适当的权限运行bjam 以安装到/usr/local/include/usr/local/lib,这两者都应该在您的搜索路径中...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-14
      • 2021-02-26
      • 2018-02-27
      • 2016-10-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多