Mac 上的符号链接 make as gmake

Symlink make as gmake on Mac

我是 运行 一个程序 (OpenModelica OMEdit 1.18.0~dev-109-ged8ef0a),其中一个操作需要 gmakegmake 没有安装在我的 Mac (Big Sur 11.5.2) 但 make 是。我试图符号链接 gmake 指向 make 但它不起作用:

➜  where make         
/usr/bin/make
➜  make -v | HEAD -n 1
GNU Make 3.81
➜  pwd
/opt/openmodelica/bin
➜  sudo ln -s /usr/bin/make /opt/openmodelica/bin/gmake
➜  ls -lh gmake
lrwxr-xr-x  1 root  wheel    13B 13 Dec 09:15 gmake -> /usr/bin/make
➜  /opt/openmodelica/bin/gmake -v
gmake: error: sh -c '/Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -find gmake 2> /dev/null' failed with exit code 17664: (null) (errno=Invalid argument)
xcode-select: Failed to locate 'gmake', requesting installation of command line developer tools.

它每次都会提示安装我已经完成的 XCode 命令行开发工具。从错误消息来看,尽管指向 make 可执行文件,它似乎仍在尝试查找 gmake? (为什么会出错?)有没有办法让它像我预期的那样工作,或者我必须安装 gmake 使用 brew 然后使用符号链接到它?

命令行工具版本:

➜ pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
package-id: com.apple.pkg.CLTools_Executables
version: 12.5.1.0.1.1623191612
volume: /
location: /
install-time: 1639360537
groups: com.apple.FindSystemFiles.pkg-group

** 编辑 **

我正在使用 zsh 5.8 (x86_64-apple-darwin20.0),我不知道这是否是 gmakemake 的符号链接无法正常工作的一个因素?

我不明白为什么会这样,但来自@Holger Just 的评论:

➜ brew install make

这将添加一个符号链接:

➜ ls -lh /usr/local/bin/gmake
/usr/local/bin/gmake@ -> ../Cellar/make/4.3/bin/gmake

然后链接到那个:

➜ sudo ln -s /usr/local/bin/gmake /opt/openmodelica/bin/gmake

...按预期工作:

➜ /opt/openmodelica/bin/gmake -v | head -n 1
GNU Make 4.3