简介

LinuxBrew是流行的Mac OS X的一个Linux叉自制包管理器。

LinuxBrew是包管理软件,它能从源(在Debian / Ubuntu的如“易/ DEB”,并在CentOS的/ RedHat的“Yum/ RPM”)系统的默认包管理安装软件包,

为什么要使用LinuxBrew?

  • 自制最初是为Mac OS X的开发(它没有一个标准的开源软件包管理系统)。 这所取代包管理层如的MacPorts芬克 。LinuxBrew的自制程序移植到Linux上。

  • 大多数Linux发行版都有一个很好的包管理系统(例如Debian / Ubuntu中的“apt / deb”和CentOS / RedHat中的“yum / rpm”),但是

    • 标准存储库中的软件包通常比最新的可用版本旧,和
    • 许多开源包在标准库中不可用(例如常见的生物信息学工具)。
  • LinuxBrew提供的软件安装Recipe(包从源代码安装在本地机器上编译),以补充从分布的标准库包的仓库。

  • LinuxBrew提供了一种简单的方法来建立自己的资料库(即根据您的需求的开源软件包列表)。

  • LinuxBrew安装在用户指定的目录(未全系统)软件,并且不需要sudo访问。

  • LinuxBrew(自制软件 )集成得很好, GitHub上 ,使安装Recipe分享轻松。

特别是随着DigitalOcean ,这(在写这篇文章的时间)不提供共享Droplet图像(自定义配置安装的软件),一个LinuxBrew库可以提供一个快捷的方法,以一个标准的Linux机器上安装特定的软件包和版本。

安装LinuxBrew

第1步 - 克隆LinuxBrew


为了保持整洁,克隆LinuxBrew成用户的主目录中的隐藏目录:

$ git clone https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew

但任何其他目录也将工作,以及。

第2步 - 更新环境变量


下一步骤是将LinuxBrew添加到用户的环境变量。

添加以下行到用户的年底~/.bashrc文件中:

# Until LinuxBrew is fixed, the following is required.
# See: https://github.com/Homebrew/linuxbrew/issues/47
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:$PKG_CONFIG_PATH
## Setup linux brew
export LINUXBREWHOME=$HOME/.linuxbrew
export PATH=$LINUXBREWHOME/bin:$PATH
export MANPATH=$LINUXBREWHOME/man:$MANPATH
export PKG_CONFIG_PATH=$LINUXBREWHOME/lib64/pkgconfig:$LINUXBREWHOME/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=$LINUXBREWHOME/lib64:$LINUXBREWHOME/lib:$LD_LIBRARY_PATH

:如果您安装LinuxBrew到不同的目录,更改路径LINUXBREWHOME以上。

第3步 - 更换源


brew默认的源速度太慢了,有时还会被墙……,可以替换成国内的源,这里演示的是中科大的源。

替换brew.git
cd "$(brew --repo)"

git remote set-url origin https://mirrors.ustc.edu.cn/brew.git
替换homebrew-core.git
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"

git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
替换Homebrew Bottles源

对于bash用户:

echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile

source ~/.bash_profile

然后brew update 更新一下。

第4步 - 测试安装


要确保这些更改生效,请注销并再次登录。 然后shell应该使用这些新的设置。

要测试这些新设置,请尝试:

$ which brew
/home/ubuntu/.linuxbrew/bin/brew
$ echo $PKG_CONFIG_PATH
/home/ubuntu/.linuxbrew/lib64/pkgconfig:/home/ubuntu/.linuxbrew/lib/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib64/pkgconfig:/usr/share/pkgconfig:

使用LinuxBrew安装软件包


哪些包可用?


类型brew search看到所有可用的软件包列表(所有包LinuxBrew当前安装知道-见下文有关添加库)。

类型brew search WORD ,查看所有包含WORD包(称为自制行话_公式_ )。 例:

$ brew search xml
blahtexml libnxml libxml2 xml-coreutils xml2 xmlrpc-c
html-xml-utils libwbxml libxmlsec1 xml-security-c xmlcatmgr xmlsh
libmxml libxml++ tinyxml xml-tooling-c xmlformat xmlstarlet

安装软件包


要安装包,运行brew install PACKAGE

例如,在安装JQ - JSON处理器

$ brew install jq
==> Downloading http://stedolan.github.io/jq/download/source/jq-1.3.tar.gz
==> ./configure
==> make
/home/ubuntu/.linuxbrew/Cellar/jq/1.3: 7 files, 256K, built in 10 seconds
$ which jq
/home/ubuntu/.linuxbrew/bin/jq
$ jq --version
jq version 1.3

LinuxBrew的有效性是明显的:尽管Ubuntu的最新资料库已_JQ,_其版本是旧的(1.2)。 Debian的稳定测试没有_JQ_包的。 LinuxBrew的版本是最新的(1.3)。 另外,LinuxBrew将程序安装到不会与系统默认位置冲突的路径。

参考:

https://www.howtoing.com/how-to-install-and-use-linuxbrew-on-a-linux-vps

https://thief.one/2017/08/24/1/

在Linux安装和使用LinuxBrew的更多相关文章

  1. 搜狗输入法linux安装 以及 12个依赖包下载链接分享

    搜狗输入法linux安装版,先安装各种依赖包,大概12个依赖,可能中途还需要其他依赖,可以效仿解决依赖问题.如图这12个文件要是手动点击下载,那也太笨点了,我们要用shell命令批量下载.命令如下:w ...

  2. linux安装php

    接上篇:linux安装apache 一.安装php 先安装libxml2库 [root@ctxsdhy package]# yum -y install libxml2-devel 最新地址在:htt ...

  3. linux安装oracle11g

    准备oracle安装文件 Oracle11gR2包含两个文件linux_11gR2_database_1of2.zip和linux_11gR2_database_2of2.zip,将这两个文件通过SS ...

  4. TODO:Linux安装PHP MongoDB驱动

    TODO:Linux安装PHP MongoDB驱动 PHP利于学习,使用广泛,主要适用于Web开发领域. MongoDB的主要目标是在键/值存储方式(提供了高性能和高度伸缩性)以及传统的RDBMS系统 ...

  5. Symantec Backup Exec 2010 Agent For Linux安装

    以前写过一篇文章介绍过Symantec Backup Exec 2012 Agent For Linux安装安装,今天介绍一下Symantec Backup Exec 2010 Agent For L ...

  6. Symantec Backup Exec 2012 Agent For Linux安装

    Backup Exec 2012 介绍 Backup Exec 2012 是一种为虚拟和物理环境提供保护的集成产品,能够简化备份和灾难恢复,并提供了无可匹敌的恢复功能.借助于强大的 Symantec ...

  7. linux 安装jdk

    1.Linux安装JDK步骤1. 先从网上下载jdk(jdk-1_5_0_02-linux-i586.rpm) ,推荐SUN的官方网站www.sun.com,下载后放在/home目录中,当然其它地方也 ...

  8. Hadoop Linux安装

    Hadoop Linux安装 步骤流程 1.硬件准备 2.软件准备(推荐CDH) 3.将Hadoop安装包分发到各个节点下 4.安装JDK 5.修改/etc/hosts配置文件 6.设置SSH免密码登 ...

  9. 自己瞎捣腾的Win7下Linux安装之路-----理论篇

    接着上回说道,我把双系统做好啦,开心.... 之后我就在想几个问题: 1.在Ubuntu装好后,重启电脑却还是win7,等我用EasyBCD之后,才可选择使用装好的Ubuntu呢? 2.在用EasyB ...

随机推荐

  1. 依赖反转Ioc和unity,autofac,castle框架教程及比较

    1.依赖倒置的相关概念 http://www.cnblogs.com/fuchongjundream/p/3873073.html IoC模式(依赖.依赖倒置.依赖注入.控制反转) 2.依赖倒置的方式 ...

  2. C# 调用.bat 提示该命令不是内部命令或外部命令

    前提:双击.bat文件可以执行成功,用C#调用提示该命令不是内部命令或外部命令...... 解决方法:下面代码的红色标注,既要设置.bat文件的文件名FileName,也要设置.bat文件所在的文件夹 ...

  3. 记一次CentOS5.7更新glibc导致libc.so.6失效,系统无法启动

      以下是错误示范,错误过程还原,请勿模仿!!! wkhtmltopdf 启动,提示/lib64/libc.so.6版本过低 $ ./wkhtmltopdf http:www.baidu.com 1. ...

  4. jQuery工具--jQuery.isNumeric(value)和jQuery.trim(str)

    jQuery.isNumeric(value) 概述 确定它的参数是否是一个数字. $.isNumeric() 方法检查它的参数是否代表一个数值.如果是这样,它返回 true.否则,它返回false. ...

  5. Solid Dominoes Tilings (轮廓线dp打表 + 容器)

    第一步先打一个表,就是利用轮廓线DP去打一个没有管有没有分界线组合数量的表 #include<bits/stdc++.h> using namespace std; ; <<; ...

  6. Spark学习之路 (十八)SparkSQL简单使用

    一.SparkSQL的进化之路 1.0以前: Shark 1.1.x开始: SparkSQL(只是测试性的)  SQL 1.3.x: SparkSQL(正式版本)+Dataframe 1.5.x: S ...

  7. FastDFS:Java客户都实现文件的上传、下载、修改、删除

    客户端版本:fastdfs_client_v1.24.jar 配置文件 connect_timeout = 200 network_timeout = 3000 charset = UTF-8 htt ...

  8. javanio1----传统io

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...

  9. AtCoder Beginner Contest 044 A - 高橋君とホテルイージー / Tak and Hotels (ABC Edit)

    Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement There is a hotel with ...

  10. Oracle 数据库实现数据合并:merge

    1.使用update进行数据更新 1)最简单的更新 update tablea a set a.price=1.00 2)带条件的数据更新 update tablea a set a.price = ...