macox 编译配置 资料 Homebrew安装工具
来源:互联网 发布:stlinkv2软件应用 编辑:程序博客网 时间:2024/05/21 08:59
2.使用brew安装软件:(比如安装wget)brew install wget
3.使用brew卸载软件:brew uninstall unrar
4.使用brew搜索软件:(比如搜apache)brew search /apache*/
5.显示已经安装软件列表:brew list
6.更新软件:brew update
7.更新某具体软件:(比如更新git)brew upgrade git
8.查看那些已安装的程序需要更新:brew outdated
Homebrew的安装–首先确保你的系统满足如下要求:
基于Intel CPU
操作系统为Mac OS X 10.5 Leopard或更高版本
已安装版本管理工具Git(Mac OS X 10.7 Lion已经预安装)
已安装Xcode开发工具1
已安装Java Developer Update
Homebrew是啥?
“Homebrew installs the stuff you need that Apple didn’t.——Homebrew 使 OS X 更完整”。
Homebrew的官网[1](多语言版本)简单明了地介绍了如何安装和使用这个工具,并提供了自己的Wiki。
1 安装Homebrew
brew的安装很简单,使用一条ruby命令即可,Mac系统上已经默认安装了ruby。
Installation
The suggested and easiest way to install Homebrew is on the homepage. We don’t duplicate it here because it is asecurity risk to list it on a user-editable wiki.
The standard script installs Homebrew to /usr/local
so that you don’t need sudo when youbrew install
. It is acareful script, it can be run even if you have stuff installed to/usr/local
already. It tells you exactly what it will do before itdoes it too. And you have to confirm everything it will do before itstarts.
There are other ways to install Homebrew which provide you with moreflexibility. They are listed below the requirements.
"- gerryyang@mba:~$ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
- It appears Homebrew is already installed. If your intent is to reinstall you
- should do the following before running this installer again:
- rm -rf /usr/local/Cellar /usr/local/.git && brew cleanup
由于我的系统上已经安装过brew,因此再次执行安装命令会提示我brew已经存在。
2 Homebrew的用法
查看brew的具体用法:
- gerryyang@mba:~$brew
- Example usage:
- brew [info | home | options ] [FORMULA...]
- brew install FORMULA...
- brew uninstall FORMULA...
- brew search [foo]
- brew list [FORMULA...]
- brew update
- brew upgrade [FORMULA...]
- brew pin/unpin [FORMULA...]
- Troubleshooting:
- brew doctor
- brew install -vd FORMULA
- brew [--env | --config]
- Brewing:
- brew create [URL [--no-fetch]]
- brew edit [FORMULA...]
- open https://github.com/Homebrew/homebrew/wiki/Formula-Cookbook
- Further help:
- man brew
- brew home
- gerryyang@mba:~$
3 Homebrew的有趣问题
下面关于Homebrew的一些常见问题[3]:
(1) 在OS X中找不到想要的软件,可以使用brew安装;
- gerryyang@mba:~$brew install wget
- ==> Downloading http://ftpmirror.gnu.org/wget/wget-1.14.tar.gz
- ######################################################################## 100.0%
- ==> ./configure --prefix=/usr/local/Cellar/wget/1.14 --sysconfdir=/usr/local/etc
- ==> make install
- Warning: Could not link wget. Unlinking...
- Error: The `brew link` step did not complete successfully
- The formula built, but is not symlinked into /usr/local
- You can try again using `brew link wget'
- Possible conflicting files are:
- /usr/local/bin/wget
- /usr/local/share/man/man1/wget.1
- ==> Summary
- <span style="font: 13.0px Monaco">/usr/local/Cellar/wget/1.14: 8 files, 688K, built in 2.3 minutes</span>
由于之前使用源码方式安装过wget,因此再用brew安装时会提示冲突的错误,因为/usr/locat/bin/wget已经存在。实际上,Homebrew 将软件包分装到单独的目录(/usr/local/Cellar),然后 symlink 到 /usr/local 中。
(2) 如何更新本地已安装的package呢?
第一步:先更新brew:
brew update
- gerryyang@mba:bin$brew update
- Already up-to-date.
第二步:更新所有package:
brew upgarde
- gerryyang@mba:bin$brew upgrade
- ==> Upgrading 1 outdated package, with result:
- wget 1.15
- ==> Upgrading wget
- ==> Installing wget dependency: openssl
- ==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/openssl-1.0
- ######################################################################## 100.0%
- ==> Pouring openssl-1.0.1f.mavericks.bottle.tar.gz
- ==> Caveats
- This formula is keg-only, so it was not symlinked into /usr/local.
- Mac OS X already provides this software and installing another version in
- parallel can cause all kinds of trouble.
- The OpenSSL provided by OS X is too old for some software.
- Generally there are no consequences of this for you. If you build your
- own software and it requires this formula, you'll need to add to your
- build variables:
- LDFLAGS: -L/usr/local/opt/openssl/lib
- CPPFLAGS: -I/usr/local/opt/openssl/include
- ==> security find-certificate -a -p /Library/Keychains/System.keychain > '/usr/l
- ==> security find-certificate -a -p /System/Library/Keychains/SystemRootCertific
- ==> mv -f /usr/local/etc/openssl/osx_cert.pem.tmp /usr/local/etc/openssl/osx_cer
- ==> Summary
- /usr/local/Cellar/openssl/1.0.1f: 429 files, 15M
- ==> Installing wget
- ==> Downloading http://ftpmirror.gnu.org/wget/wget-1.15.tar.gz
- ######################################################################## 100.0%
- ==> ./configure --prefix=/usr/local/Cellar/wget/1.15 --sysconfdir=/usr/local/etc --with-ssl=openssl --with-libssl-prefix=/usr/local/opt/openssl --disable-iri
- ==> make install
- Warning: Could not link wget. Unlinking...
- Error: The `brew link` step did not complete successfully
- The formula built, but is not symlinked into /usr/local
- You can try again using `brew link wget'
- Possible conflicting files are:
- /usr/local/bin/wget
- /usr/local/share/man/man1/wget.1
- ==> Summary
- /usr/local/Cellar/wget/1.15: 8 files, 700K, built in 73 seconds
- gerryyang@mba:bin$
(3) 如何删除Homebrew?
If you installed to /usr/local
then you can use the script in thisgist to uninstall — it will onlyremove Homebrew and the stuff Homebrew installed leaving anything elsein/usr/local
alone.
Provided you haven’t put anything else in Homebrew’s prefix(brew --prefix
), you can generally justrm -rf
that directory. Thisis because Homebrew won’t touch files outside its prefix.
(4) Homebrew下载的package存放的路径在哪里?
- gerryyang@mba:bin$brew --cache
- /Library/Caches/Homebrew
- gerryyang@mba:bin$ls /Library/Caches/Homebrew/
- Formula/ wget-1.14.tar.gz
- coreutils-8.22.tar.xz wget-1.15.tar.gz
- openssl-1.0.1f.mavericks.bottle.tar.gz xz-5.0.5.mavericks.bottle.2.tar.gz
- gerryyang@mba:bin$ls /Library/Caches/Homebrew/Formula/
- coreutils.brewing openssl.brewing wget.brewing xz.brewing
- gerryyang@mba:bin$
(5) 我可以安装自己的stuff在/usr/local吗?
Yes, brew is designed to not get in your way so you can use it how youlike.
Install your own stuff, but be aware that if you install commonlibraries, like libexpat yourself, it may cause trouble when trying tobuild certain Homebrew formula. As a resultbrew doctor
will warn youabout this.
Thus it’s probably better to install your own stuff to the Cellar andthen brew link
it. Like so:
$ cd foo-0.1$ brew diy./configure —prefix=/usr/local/Cellar/foo/0.1$ ./configure —prefix=/usr/local/Cellar/foo/0.1
[snip]$ make && make install$ brew link fooLinking /usr/local/Cellar/foo/0.1… 17 symlinks created
在我的环境上检测是这样的:
- gerryyang@mba:bin$brew doctor
- Warning: Unbrewed dylibs were found in /usr/local/lib.
- If you didn't put them there on purpose they could cause problems when
- building Homebrew formulae, and may need to be deleted.
- Unexpected dylibs:
- /usr/local/lib/libboost_atomic.dylib
- /usr/local/lib/libboost_chrono.dylib
- /usr/local/lib/libboost_context.dylib
- /usr/local/lib/libboost_date_time.dylib
- /usr/local/lib/libboost_filesystem.dylib
- /usr/local/lib/libboost_graph.dylib
- /usr/local/lib/libboost_iostreams.dylib
- /usr/local/lib/libboost_locale.dylib
- /usr/local/lib/libboost_log.dylib
- /usr/local/lib/libboost_math_c99.dylib
- /usr/local/lib/libboost_math_c99f.dylib
- /usr/local/lib/libboost_math_c99l.dylib
- /usr/local/lib/libboost_math_tr1.dylib
- /usr/local/lib/libboost_math_tr1f.dylib
- /usr/local/lib/libboost_math_tr1l.dylib
- /usr/local/lib/libboost_prg_exec_monitor.dylib
- /usr/local/lib/libboost_program_options.dylib
- /usr/local/lib/libboost_python.dylib
- /usr/local/lib/libboost_random.dylib
- /usr/local/lib/libboost_regex.dylib
- /usr/local/lib/libboost_serialization.dylib
- /usr/local/lib/libboost_signals.dylib
- /usr/local/lib/libboost_system.dylib
- /usr/local/lib/libboost_thread.dylib
- /usr/local/lib/libboost_timer.dylib
- /usr/local/lib/libboost_unit_test_framework.dylib
- /usr/local/lib/libboost_wave.dylib
- /usr/local/lib/libboost_wserialization.dylib
- Warning: Unbrewed static libraries were found in /usr/local/lib.
- If you didn't put them there on purpose they could cause problems when
- building Homebrew formulae, and may need to be deleted.
- Unexpected static libraries:
- /usr/local/lib/libboost_atomic.a
- /usr/local/lib/libboost_chrono.a
- /usr/local/lib/libboost_context.a
- /usr/local/lib/libboost_coroutine.a
- /usr/local/lib/libboost_date_time.a
- /usr/local/lib/libboost_exception.a
- /usr/local/lib/libboost_filesystem.a
- /usr/local/lib/libboost_graph.a
- /usr/local/lib/libboost_iostreams.a
- /usr/local/lib/libboost_locale.a
- /usr/local/lib/libboost_log.a
- /usr/local/lib/libboost_math_c99.a
- /usr/local/lib/libboost_math_c99f.a
- /usr/local/lib/libboost_math_c99l.a
- /usr/local/lib/libboost_math_tr1.a
- /usr/local/lib/libboost_math_tr1f.a
- /usr/local/lib/libboost_math_tr1l.a
- /usr/local/lib/libboost_prg_exec_monitor.a
- /usr/local/lib/libboost_program_options.a
- /usr/local/lib/libboost_python.a
- /usr/local/lib/libboost_random.a
- /usr/local/lib/libboost_regex.a
- /usr/local/lib/libboost_serialization.a
- /usr/local/lib/libboost_signals.a
- /usr/local/lib/libboost_system.a
- /usr/local/lib/libboost_test_exec_monitor.a
- /usr/local/lib/libboost_thread.a
- /usr/local/lib/libboost_timer.a
- /usr/local/lib/libboost_unit_test_framework.a
- /usr/local/lib/libboost_wave.a
- /usr/local/lib/libboost_wserialization.a
- Warning: You have unlinked kegs in your Cellar
- Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
- those kegs to fail to run properly once built. Run `brew link` on these:
- wget
- gerryyang@mba:bin$
(6) 为什么选择Homebrew这个名字?
mxcl was too concerned with the beer theme and didn’t consider that the project may actually prove popular. By the time he realized it was too late. However, today, the first google hit for “homebrew” is not beer related ;-)
看来作者是个酒鬼!
- macox 编译配置 资料 Homebrew安装工具
- MACOX中apache配置
- macox安装scrapy
- Mac下安装配置Homebrew
- mac工具安装-wget、homebrew、pip等
- MAC下编译ffmpeg之安装homebrew
- macox下编译snappy静态库
- Mac下通过Homebrew安装配置MySQL
- mac上配置git,及Homebrew安装
- Mac下如何安装配置Homebrew
- Mac下安装配置Homebrew图文教程
- homebrew安装mysql及修改配置
- 安装Homebrew
- 安装Homebrew
- 安装 Homebrew
- 安装HomeBrew
- 安装Homebrew
- Homebrew 安装
- java根据当前日期+指定天数(月份...)得到相应日期,计算两日期之差
- 2014-08-12 12:45
- Android中基于NuPlayer的RTSP框架学习
- stl之一: vector用法介绍【转】
- poj 1114 Piggy-Bank 完全背包 dp
- macox 编译配置 资料 Homebrew安装工具
- c语言基础
- Linux tar命令详解
- java写99乘法表
- NGUI 制作字体集和图集
- 【linux】tail 命令
- Light OJ 1138 - Trailing Zeroes (III)
- fork函数简介
- xml文件中使用的转义字符