我需要一个特定版本的python才能放入Mac上的/usr/bin
目录中,以便满足内部使用该位置的大量工具。这些工具通常在linux上运行。我正在尝试在Mac上创建一个环境,以开发不需要在Linux上运行的工具。使用命令设置Linux环境
$ sudo apt-get install --assume-yes --no-install-recommends python3.6-dev
默认情况下会作为直接的二进制可执行文件安装到/usr/bin
中:
$ ls -la /usr/bin | grep python3.6
lrwxrwxrwx 1 root root 23 Dec 24 2018 pdb3.6 -> ../lib/python3.6/pdb.py
-rwxr-xr-x 2 root root 4555968 Dec 24 2018 python3.6
lrwxrwxrwx 1 root root 33 Dec 24 2018 python3.6-config -> x86_64-linux-gnu-python3.6-config
-rwxr-xr-x 2 root root 4555968 Dec 24 2018 python3.6m
lrwxrwxrwx 1 root root 34 Dec 24 2018 python3.6m-config -> x86_64-linux-gnu-python3.6m-config
lrwxrwxrwx 1 root root 34 Dec 24 2018 x86_64-linux-gnu-python3.6-config -> x86_64-linux-gnu-python3.6m-config
-rwxr-xr-x 1 root root 3204 Dec 24 2018 x86_64-linux-gnu-python3.6m-config
我尝试运行mac installer,它似乎在我的应用程序文件夹中创建了一些东西
$ tree -L 1 /Applications/Python\ 3.6/
/Applications/Python\ 3.6/
├── IDLE.app
├── Icon\r
├── Install\ Certificates.command
├── License.rtf
├── Python\ Documentation.html -> /Library/Frameworks/Python.framework/Versions/3.6/Resources/English.lproj/Documentation/index.html
├── Python\ Launcher.app
├── ReadMe.rtf
└── Update\ Shell\ Profile.command
同时还在我的PATH上为此Python添加了一条路线
$ which python3.6
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6
在官方文档https://docs.python.org/3/using/mac.html#getting-and-installing-macpython上有一些评论讨论了Mac和python安装的特定风格,但是它并没有提示我如何安装到 Applications 之外的其他内容。
我尝试了一种变通方法,使用sudo在我的/usr/bin
文件夹中创建一个符号链接,但是我只得到了一个Operation not permitted
,这显然受 Apple's System Integrity Protection的限制。
$ sudo ln -s /Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 /usr/bin/python3.6
ln: /usr/bin/python3.6: Operation not permitted
也许我可以从源代码构建并直接发布到/ usr / bin?