在macos v10.15版本中, xz, python等软件无法使用brew安装, 原因是brew对于旧版本的macos不再支持, 但是我们可以使用另外一个macos下的包管理工具来安装brew无法安装的软件, macport 是一个和brew类似的macos下的一个非常优秀的软件包安装管理工具.
MacPort安装前提条件
安装macport的前提条件是必须先安装xcode, macos v10.15版本支持的最新版本xcode是xcode 12.4 可以自行登陆苹果官方网站下载安装. 注意这个工具有点大 最少需要约50G的空闲空间才能操作,压缩包有10G, 解压后有30多G.
# apple下载地址,注意这个地址需要登陆苹果账号才能访问
https://download.developer.apple.com/Developer_Tools/Xcode_12.4/Xcode_12.4.xip
Macos v10.15 Catalina安装MacPort
10.15版本需要使用专用的MacPort安装包,推荐使用官方提供的pkg安装包来安装,下载地址如下:
macOS 10.15 Catalina MacPort专用安装包下载地址:
# 直接下载地址
https://github.com/macports/macports-base/releases/download/v2.10.1/MacPorts-2.10.1-10.15-Catalina.pkg
# 官方文档
https://guide.macports.org/#installing.xcode
这个pkg安装包安装就非常简单了,直接下一步就可以安装好
MacPort环境配置
macport的port命令安装后的路径为 /opt/local/bin , 需要手动将这个路径加入到系统PATH里面,否则找不到port命令哦.
环境配置方法, 在 ~/.bash_profile 文件里面增加以下配置
# PATH variable for use with MacPorts.
export PATH="/opt/local/bin:/opt/local/sbin:$PATH"
如果还没有 ~/.bash_profile 文件 ,则创建并加入以下配置
# 设置系统环境变量PATH,注意在前面的PATH变量会覆盖后面的
# 修改生效 source ~/.bash_profile
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/local/bin:/opt/local/sbin"
生效环境配置: source ~/.bash_profile
MacPort基本使用
macport的使用命令和brew的差不多, 常用的有 search 查找软件 , install 安装软件, uninstall卸载软件.
查看版本信息: port version
搜索索引中的软件: port search xxx
安装新软件: sudo port install xxx
卸载软件: sudo port uninstall xxx
查看已安装软件的信息: prot info xxx
查看有更新的软件以及版本: port outdated
升级可以更新的软件: sudo port upgrade outdated
将指定的版本设置为活动版本,
示例 将python3.12版本设置为默认版本:
# 将python312 设置为python默认版本
sudo port select --set python python312
# 设置python3 命令的默认版本为python312
sudo port select --set python3 python312
注意, macport里面的 python版本的命名和brew有些区别, port里面是这样 python312 , 而brew里面是这样 python@3.12
Macos与对应的MacPort安装pkg包参考
-
macOS 14 Sonoma:
MacPorts-2.10.1-14-Sonoma.pkg
macOS 13 Ventura:
MacPorts-2.10.1-13-Ventura.pkg
macOS 12 Monterey:
MacPorts-2.10.1-12-Monterey.pkg
macOS 11 Big Sur:
MacPorts-2.10.1-11-BigSur.pkg
macOS 10.15 Catalina:
MacPorts-2.10.1-10.15-Catalina.pkg
macOS 10.14 Mojave:
MacPorts-2.10.1-10.14-Mojave.pkg
macOS 10.13 High Sierra:
MacPorts-2.10.1-10.13-HighSierra.pkg
macOS 10.12 Sierra:
MacPorts-2.10.1-10.12-Sierra.pkg