【问题标题】:Installing GMP on MacOS X with Xcode使用 Xcode 在 MacOS X 上安装 GMP
【发布时间】:2012-10-12 04:23:57
【问题描述】:

我正在尝试在我的 C 和 C++ 程序中使用 GMP 库。 我使用 Xcode 编写代码。 我按照说明在我的机器上安装了 GMP,最终得到一个文件夹“~/usr/local/gmp-5.0.5”,其中包含 gmp.h 文件。

如何让我的程序看到这个库?例如,如果我决定将我的程序保存在桌面上???

安装gmp-5.0.5的最佳位置在哪里??? 使用 include "gmp.h" 会显示错误 "file not found"。

【问题讨论】:

  • 之前的一篇文章谈到了 MAC 上的 GMP 配置,希望您觉得 this link 有用。

标签: c++ c macos xcode4 gmp


【解决方案1】:

我是这样做的:

https://gmplib.org/ 下载 GMP (gmp-6.0.0a.tar.lz) 从http://www.nongnu.org/lzip/lzip.html下载lzip (lzip-1.16.tar.gz)

  1. 安装lzip
    • 解压:tar -xvf lzip-1.16.tar.gz
    • cd lzip-1.16
    • ./配置
    • 制作
    • 检查
    • make install(如果收到权限被拒绝消息,请使用 sudo 运行)
  2. 安装gmp
    • 将 gmp-6.0.0a.tar.lz 文件复制到 /usr/local/lib(使用 sudo 完成)
    • 解压lz:lzip -d gmp-6.0.0a.tar.lz
    • 解压 tar:tar -xvf gmp-6.0.0a.tar
    • cd gmp-6.0.0/
    • ./配置
    • 制作
    • 检查
    • make install(如果收到权限被拒绝消息,请使用 sudo 运行)

【讨论】:

  • 我们可以下载 gmp-6.0.0a.tar.bz2,而不是 *.lz 版本。解压 bz2 的命令是 bzip2 -d -k gmp-6.0.0a.tar.bz2。以下步骤相同。
【解决方案2】:
  1. 如果您将库安装在 /usr/local 中,您将能够简单地 #include <gmp.h> 并将 -lgmp 添加到您的链接器设置(链接 > 其他链接器标志)。

  2. 如果你坚持将库放在你的主目录中,比如~/local,那么你需要将~/local/include添加到你的标题搜索路径(搜索路径>标题搜索路径),~/local/lib到您的库搜索路径(搜索路径 > 库搜索路径)。这些位于项目或目标设置下。您还需要如上所述添加-lgmp

关于架构的注意事项: LibGMP 的独特之处在于它会在编译时选择目标架构,并且通常会在可用的情况下选择 64 位目标。如果您的项目是 32 位,而您的 GMP 是 64 位,则链接将失败。

LibGMP 这样做是因为它所做的那种操作在 64 位架构上要快得多。在 64 位上乘以大整数的速度大约是 32 位上的 4 倍。

警告:除非他们先安装 GMP,否则您的项目将无法在其他人的计算机上运行。

警告 2:如果您使用 GMP 静态链接以简化安装,则需要开源您的应用程序。除非你同意,否则不要静态链接。

【讨论】:

  • 关于警告:他可以静态链接到 GMP,在这种情况下,人们不需要安装它来运行应用程序。
  • @MihaiTodor:如果他静态链接到 GMP,他必须开源他的应用程序。
猜你喜欢
  • 2014-10-10
  • 2018-12-08
  • 2018-09-24
  • 2021-10-28
  • 1970-01-01
  • 2013-02-03
  • 2011-01-08
  • 1970-01-01
  • 2017-07-25
相关资源
最近更新 更多