卸载Macports,安装Homebrew

@[Mac|Homebrew|Macports]

概述####

MacPorts Homebrew 都是Mac OS X上的软件包管理工具,同时它们之间是不兼容的,通过这两个软件包管理工具都可以很方便的管理Mac OS X上软件及应用库的安装。但是据说 MacPorts 有个缺点就是会重复安装一些系统本省自带的库或软件,而 Homebrew 则会优先采用系统自带的库或软件不做重复安装,比如安装 Python ,对于系统已经有的依赖库, Homebrew 不做安装。

如果你已经安装了 Macports ,需要先对其进行卸载,在安装 Homebrew

删除Macports

使用MacPorts安装过的软件在/opt/local目录下,删除之前最好查看下,自己心里有个数

运行以下Shell命令:

sudo port -f uninstall installed
sudo port clean all
sudo rm -rf \
/opt/local \
/Applications/DarwinPorts \
/Applications/MacPorts \
/Library/LaunchDaemons/org.macports.* \
/Library/Receipts/DarwinPorts*.pkg \
/Library/Receipts/MacPorts*.pkg \
/Library/StartupItems/DarwinPortsStartup \
/Library/Tcl/darwinports1.0 \
/Library/Tcl/macports1.0 \
~/.macports

可以通过以下命令,避免老是需要sudo授权:
sudo chown -R whoami /usr/local

安装Homebrew####

Homebrew是基于Ruby安装,Mac默认自带Ruby
运行以下命令进行安装:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

注意:安装过程中会先检测系统中是否已经安装了Homebrew,如果已经安装,会有提示命令行让你先删除已安装的Homebrew。同时安装过程中需要按回车键授权同意安装,安装结束之后,最好运行以下命令,用于检测是否有冲突,同时它会提示一些已失效的库链接:brew doctor

Homebrew安装在/user/local目录下,同时它会创建/user/local/Cellar目录用于存放通过Homebrew安装的程序,运行brew -v查看安装版本

Homebrew常用命令####

brew search * --搜索程序,例:brew search python
brew install * --安装程序,例:brew install python
brew uninstall * --卸载程序,例:brew uninstall python
brew list --列举通过Homebrew安装的程序
brew update --更新Homebrew
brew upgrade [*] --更新某个具体程序,或者更新所有程序
brew cleanup [*] --删除某个具体程序,或者删除所有老版程序
brew outdated --查看哪些程序需要更新

其他命令#####

brew home * --用浏览器打开
brew info * --显示软件内容信息
brew deps * --显示包依赖
brew server * --启动web服务器,可以通过浏览器访问http://localhost:4567/ 来同网页来管理包
brew -h --查看帮助

删除Homebrew####

cd `brew –prefix`
rm -rf Cellar
brew prune
rm -rf Library .git .gitignore bin/brew README.md share/man/man1/brew
rm -rf ~/Library/Caches/Homebrew

PS:如果目前仍在用Macports,提供以下链接用于解决和Yosemite不兼容的问题:
https://www.macports.org/install.php 提供Yosemite版Macports下载
https://trac.macports.org/wiki/Migration 卸载旧版Macports的一些步骤
MacPorts常用命令:

更新ports tree和MacPorts版本,强烈推荐第一次运行的时候使用-v参数,显示详细的更新过程:sudo port -v selfupdate
搜索索引中的软件:port search name
安装新软件:sudo port install name
卸载软件:sudo port uninstall name
查看有更新的软件以及版本:port outdated
升级可以更新的软件:sudo port upgrade outdated