目录
- 1. MacPorts是什么
- 2. MacPorts安装方法
- 2.1 使用安装器安装
- 2.2 源码安装
- 2.3 同步repository tree和获取最新package
- 3. 更新失败的解决方法
- 4. ports使用
1. MacPorts是什么
OSX
包管理器主要有两种,分别是Homebrew
和MacPorts
。二者都是下载source并在本地编译安装,区别主要在于对系统包的依赖不同。
-
Homebrew
尽量依赖系统现有库。优点是减少了编译时间;缺点是可能引起系统库冲突,因为包都安装在usr/local
下 -
MacPorts
尽量减少对现有库的依赖。优点是不依赖系统,更新不会影响包使用,包安装在opt/local
下;缺点是编译时间长,第一次使用时需要下载编译很多依赖的基本库
一般来说,如果希望快速安装一些便利工具,选择Homebrew
;要用到大量开源库,建议用MacPorts
2. MacPorts安装方法
详细的安装步骤参考官网https://www.macports.org/install.php
主要有两种方式:下载pkg
安装器安装,或者通过源代码安装
2.1 使用安装器安装
按照官网的说法,安装器属于最easy安装法,你只要一直点下一步就可以。亲自体验比较悲剧的是,卡在安装这个步骤,1小时都没动。 推测可能跟需要下载编译的依赖库多有关。有耐心的同学们可以多等下,看到底能不能成功orz
2.2 源码安装
easy安装法失败,只能退而求其次,下载源码安装。好在步骤简单,说明清晰,照着做就OK
- 下载源码压缩包:直接下载tar包,解压
- 编译源码,安装:
cd 解压源码目录
./configure && make && sudo make install
以上就完成了安装过程。官网提到的修改perfix
环境变量是提供执行顺序和man文档用的,默认可以不做
2.3 同步repository tree和获取最新package
以上两种安装方式完成后,在使用ports前,都要先完成同步更新。命令为
sudo port -v selfupdate
3. 更新失败的解决方法
更新失败一般和rsync服务器配置有关。可以通过https://trac.macports.org/wiki/Mirrors查询更换国内镜像
修改步骤:
- 配置文件是
/opt/local/etc/macports/sources.conf
, 编辑文件,去掉默认server,替换国内镜像
#rsync://rsync.macports.org/release/ports/ [default]
rsync://pek.cn.rsync.macports.org/macports/release/tarballs/ports.tar [default]
- 执行命令
sudo port -d sync
- 执行
sudo port -v selfupdate
,等待完成
4. ports使用
命令 sudo port install 软件名