在OSX上安装gmpy - 找不到mpc.h

12 投票
5 回答
12785 浏览
提问于 2025-04-18 03:31

我用 brew install 安装了 mpcgmp,但是当我尝试用 pip install gmpy2 时,出现了编译错误,错误信息在这行:

#include "mpc.h"

所以不知为什么,clang 找不到 mpc 这个库。我现在不知道该怎么做。

5 个回答

0

如果你在使用anaconda或miniconda,可以从conda-forge安装mpcmpfr,然后再安装gmpy

conda install -c conda-forge mpc mpfr
pip install gmpy2
2

截至2018年3月6日,对我来说唯一有效的方法是以下内容。(在Mac OS High Sierra 10.13.3上安装,使用python 3.5.4)

sudo port install libmpc
sudo port install gmp
sudo pip3 install --global-option=build_ext --global-option="-I/opt/local/include/" --global-option="-L/opt/local/lib/" gmpy2

需要注意的是,sudo port install libmpc这个命令会自动安装mpfr,因为它是一个依赖项。--global-option="-I/opt/local/include/"这个选项基本上是在告诉系统,gmpmpcmpfr的头文件都放在/opt/local/include/这个地方,而--global-option="-L/opt/local/lib/"则是告诉系统,使用的库文件在/opt/local/lib/这个位置。

17

2015年简短而直接的回答:

brew install mpfr
brew install libmpc
pip install gmpy2
49

对于使用Homebrew的OSX用户 - 我尝试了常规的操作,

brew install mpc
brew install mpfr

然后又进行了

python setup.py --prefix=/usr/local/Cellar

但是出现了一个错误,提示找不到'mpc.h'文件。确实,找不到这个文件。解决办法是,使用

brew install libmpc
brew install mpfr

来代替。之后,gmpy2就顺利编译和安装,没有再出现问题。

7

我是gmpy2的维护者。我没有Mac电脑,所以无法测试OSX的安装。

我猜你已经安装了mpfr,因为它是mpc的一个前提条件。请问开发文件(也就是gmp.hmpfr.hmpc.h)在哪里呢?

能不能试试通过命令行安装,而不是用pip?我通常用的命令是:

python setup.py install --prefix=/opt/local --force

这个命令是基于.h文件在/opt/local/include这个路径下的假设。你需要根据自己的系统调整这个路径。

撰写回答