如何通过Brew在M1 Mac的XCode中配置GMP和MPFR库?
解决M1 Mac上XCode项目无法找到GMP/MPFR头文件的问题
M1 Mac上Homebrew默认将库安装在/opt/homebrew路径下,XCode默认不会搜索这个路径,所以需要手动配置项目的编译路径:
步骤1:确认库的安装路径
先通过终端命令确认GMP和MPFR的安装位置:
brew --prefix gmp brew --prefix mpfr
M1设备上输出通常都是/opt/homebrew,对应的头文件在/opt/homebrew/include,库文件在/opt/homebrew/lib。
步骤2:配置XCode的头文件搜索路径
- 打开XCode项目,选中左侧导航栏最顶部的项目根节点
- 切换到右侧的Build Settings标签页,搜索
Header Search Paths - 双击输入框,添加路径
/opt/homebrew/include,勾选选项后的Recursive(确保递归搜索所有子目录)
步骤3:配置库文件搜索路径
同样在Build Settings中搜索Library Search Paths,添加路径 /opt/homebrew/lib,同样勾选Recursive。
步骤4:添加链接库参数
在Build Settings中搜索Other Linker Flags,添加以下参数:
-lgmp -lmpfr
这会告诉编译器在编译时链接GMP和MPFR库。
验证配置
完成上述步骤后,回到代码中重新引入头文件#include <gmp.h>和#include <mpfr.h>,应该就不会再出现文件未找到的提示。如果仍有问题,执行Product -> Clean Build Folder清理缓存后重新编译。
命令行编译补充(如果不用XCode IDE)
如果是用clang命令行编译代码,直接用以下格式:
clang 你的源码文件名.c -o 输出文件名 -I/opt/homebrew/include -L/opt/homebrew/lib -lgmp -lmpfr
内容的提问来源于stack exchange,提问作者Teagan
相关产品推荐
相关产品推荐

