在 OS X 10.10.3 上编译 Vim 不工作

Compiling Vim on OS X 10.10.3 does not work

[我不确定这是否适合这里还是应该移至 apple.SE]

今天我想到重新编译 vim 以获得最新的更新。我之前有过一两次遵循 this answer 中的建议,所以我又做了一次。我克隆了 repo 和 运行

./configure --prefix=/opt/local/ --with-features=huge

(我尝试了没有选项,问题仍然存在) 当编译器尝试解析 ObjC 文件时(无论出于何种原因),编译总是会中止

/usr/include/objc/NSObject.h:22:4: error: unknown type name 'instancetype'
 - (instancetype)self;

编译器似乎不知道当前的 Objective-C 标准。 gcc好像有问题,因为我找到了this bug ticket。然而,最近的更新是从去年开始的。

有人可以建议一种方法来完成这项工作吗?

编辑:我知道我可以通过自制软件或 macports 安装它;但是我仍然很好奇如何解决这个特殊问题。

我也试过像这样手动将编译器更改为 clang

CC=clang ./configure --prefix=/opt/local/ --with-features=huge

在 运行 之前简单地设置 CC=clang(这就是配置帮助似乎做广告的内容)并看到它什么也没做。但是,当以这种方式指定编译器时(我也对 gcc 进行了同样的尝试),许多 configure 检查结果为 no 并最终中止。

我假设 gcc 没有配置 Objective-C 支持(它至少支持 C、C++ 和 Objective-C,安装程序可以选择他们想要的任何支持) .

第 3 方 clang 可能在同一条船上。但是我知道 Xcode 版本支持所有 3 种语言,并且会选择正确的 OSX Cocoa 运行时库,所以使用它似乎已经解决了问题:

$ CC="xcrun clang" ./configure --prefix=/opt/local/ --with-features=huge

但是,如果 which clang returns /usr/bin/clang 如您所说,仅使用 clang 应该也有效,所以我无法解释这就是为什么不起作用。