Mac 上的符号链接 make as gmake
Symlink make as gmake on Mac
我是 运行 一个程序 (OpenModelica OMEdit 1.18.0~dev-109-ged8ef0a),其中一个操作需要 gmake
。 gmake
没有安装在我的 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),我不知道这是否是 gmake
到 make
的符号链接无法正常工作的一个因素?
我不明白为什么会这样,但来自@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
我是 运行 一个程序 (OpenModelica OMEdit 1.18.0~dev-109-ged8ef0a),其中一个操作需要 gmake
。 gmake
没有安装在我的 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),我不知道这是否是 gmake
到 make
的符号链接无法正常工作的一个因素?
我不明白为什么会这样,但来自@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