【1.1】Brew—mac中类似apt-get的功能

ubuntu的apt-get实在是方便,需要安装什么,一个命令搞定,相关的依赖包统统由apt-get维护。而Mac中也有一种很牛的替代工具MacPorts

homebrew主页对brew进行了详细的描述(https://github.com/Homebrew/homebrew)

一、安装brew

curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 1

然后开始安装
x share/doc/homebrew/brew-test-bot-for-core-contributors-tabs.png
x share/doc/homebrew/brew-test-bot-for-core-contributors-trigger.png
x share/doc/homebrew/brew-test-bot-passed-jenkins.png
x share/doc/homebrew/brew-test-bot-passed-pr.png
x share/doc/homebrew/brew-test-bot-triggered-pr.png
x share/man/
x share/man/man1/
x share/man/man1/brew.1

上面的方法已经过时,用下面的方法

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

或者

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

可能提示安装git

https://sourceforge.net/projects/git-osx-installer/

二、brew安装软件

以wget为例

brew install wget

开始安装了
==> Summary
🍺 /usr/local/Cellar/openssl/1.0.2d_1: 464 files, 18M
==> Installing wget
==> Downloading https://homebrew.bintray.com/bottles/wget-1.16.3.yosemite.bottle.tar.
######################################################################## 100.0%
==> Pouring wget-1.16.3.yosemite.bottle.tar.gz
🍺 /usr/local/Cellar/wget/1.16.3: 9 files, 1.5M

三、brew卸载软件

brew uninstall <软件名>
卸载之前,可以先用brew list 看一下通过brew安装的工具

四、brew检索软件

brew search /apache*/

五、brew编辑下载软件的内容

案例:sourceforge.net被墙了

报错:

sh-3.2# brew upgrade
==> Upgrading 6 outdated packages, with result:
libpng 1.5.12, imagemagick 6.7.7-6, libtiff 4.0.2, pcre 8.31, lighttpd 1.4.31, wget 1.14
==> Upgrading libpng
==> Downloading http://downloads.sf.net/project/libpng/libpng15/1.5.12/libpng-1.5.12.tar.gz

curl: (56) Recv failure: Connection reset by peer
Error: Download failed: http://downloads.sf.net/project/libpng/libpng15/1.5.12/libpng-1.5.12.tar.gz

解决方案:

brew edit libpng

	
require 'formula'

class Libpng < Formula
	homepage 'http://www.libpng.org/pub/png/libpng.html'
	#url 'http://downloads.sf.net/project/libpng/libpng15/1.5.12/libpng-1.5.12.tar.gz'
	url 'ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.5.12.tar.gz'
	sha1 'c329f3a9b720d7ae14e8205fa6e332236573704b'

	keg_only :provided_by_osx if MacOS::X11.installed?

	def install
		system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}"
		system "make install"
	end
end

很明显我用ftp.simplesystems.org替换了downloads.sf.net的文件地址。

接下来保存好内容,继续brew,成功!

tanqianshan[2.其他公司表型整理]$ brew install pdf2htmlEX
Warning: You are using OS X 10.12.
We do not provide support for this pre-release version.
You may encounter build failures or other breakage.
Error: You must `brew link cmake’ before pdf2htmlex can be installed

解决办法:

brew unistall cmake
sudo brew install cmake

七、安装指定版本

以 ffmpeg 为例,brew中当前默认为ffmpeg最新版本 v4.0。然而,我们需要 v3.4.2 版本

1.查看软件包安装来源

$ brew info ffmpeg

执行上述命令您会得到如下信息:

$ From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/ffmpeg.rb

你看到了什么?github(版本控制) 还有 *.rb(安装文件)

2.Github中查看rb文件历史提价(版本)信息

复制链接到地址栏:https://github.com/Homebrew/h… 可以看到如下信息:

url "https://ffmpeg.org/releases/ffmpeg-4.0.1.tar.xz"
sha256 "605f5c01c60db35d3b617a79cabb2c7032412be243554602eeed1b628125c0ee"

可以看到当前版本就是: ffmpeg-4.0.1 接着,在Github上查看历史提交信息,按照如下操作依次点击(熟悉github的同学应该已经看透了秘密):

点击 History: 查看历史提交列表
查找 FFmpeg: 3.4.2,并点击: 找到我们需要的版本
点击 View:查看当前版本下的ffmpeg.rb完整文件
点击 Raw : 查看ffmpeg.rb源文件,复制地址栏网址(这一步是不是不需要了,3中的网址应该也可以?我没有尝试)

3.安装 ffmpeg-3.4.2 版本软件包

ffmpeg:3.4.2 对应的ffmpeg.rb文件网址:https://raw.githubusercontent… 执行安装

$ brew install https://.../ffmpeg.rb(上面复制的网址)

参考资料

药企,独角兽,苏州。团队长期招人,感兴趣的都可以发邮件聊聊:tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn