我可以在Ubuntu上使用Homebrew吗?

时间:2015-10-26 19:04:36

标签: ubuntu homebrew linuxbrew

我只是尝试使用Homebrew和Linuxbrew在我的Ubuntu Server上安装软件包但都失败了。这就是我尝试安装它们的方式:

function getJSON() {
var req = https.get(options, function(response) {
      // handle the response
      var res_data = '';
      response.on('data', function(chunk) {
        res_data += chunk;
      });
      response.on('end', function() {
            var wikiJSON = res_data;
            console.log(wikiJSON.items);
      });
    });
    req.on('error', function(e) {
      console.log("Got error: " + e.message);
    });
    req.end();              

我收到了以下警告:

sudo apt-get install build-essential curl git m4 ruby texinfo libbz2-dev libcurl4-openssl-dev libexpat-dev libncurses-dev zlib1g-dev

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

我在home / etc中查看我的bash.bashrc并添加:

Warning: /home/tong/.linuxbrew/bin is not in your PATH.

然后我尝试了export PATH="$HOME/.linuxbrew/bin:$PATH" export MANPATH="$HOME/.linuxbrew/share/man:$MANPATH" export INFOPATH="$HOME/.linuxbrew/share/info:$INFOPATH" ,但得到了brew doctor。我怎么能在Ubuntu上使用Homebrew?

8 个答案:

答案 0 :(得分:32)

我只是尝试使用ruby命令安装它,但不知何故依赖关系没有解决因此brew没有完全安装。但是,尝试通过克隆安装:

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

然后将以下内容添加到.bash_profile

export PATH="$HOME/.linuxbrew/bin:$PATH"
export MANPATH="$HOME/.linuxbrew/share/man:$MANPATH"
export INFOPATH="$HOME/.linuxbrew/share/info:$INFOPATH"

它应该有用..

答案 1 :(得分:25)

截至2018年2月,在Ubuntu(我的是17.10)机器上安装brew就像这样简单:

sudo apt install linuxbrew-wrapper

然后,在第一次brew执行时(只需键入brew --help),系统会要求您提供两种安装选项:

me@computer:~/$ brew --help
==> Select the Linuxbrew installation directory
- Enter your password to install to /home/linuxbrew/.linuxbrew (recommended)
- Press Control-D to install to /home/me/.linuxbrew
- Press Control-C to cancel installation
[sudo] password for me:

对于推荐选项,请键入您的密码(如果您当前的用户位于sudo组中),或者,如果您希望在自己的主文件夹中安装所有依赖项,请按 Ctrl + < KBD> d 。享受。

答案 2 :(得分:12)

以下步骤对我有用:

  • 从github克隆它

    git clone https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew
    
  • 使用vi ~/.bash_profile

  • 打开.bash_profile文件
  • 添加以下行

    export PATH="$HOME/.linuxbrew/bin:$PATH"
    export MANPATH="$HOME/.linuxbrew/share/man:$MANPATH"
    export INFOPATH="$HOME/.linuxbrew/share/info:$INFOPATH"
    
  • 然后在终端中输入以下行

    export PATH=$HOME/.linuxbrew/bin:$PATH
    hash -r
    

是的,已经完成了。在终端中输入brew以检查其存在。

答案 3 :(得分:3)

您可以只按照 Homebrew on Linux docs 中的说明进行操作,但我认为最好了解说明的目的。

了解安装步骤可以节省一些时间


第 1 步:选择位置

首先,重要的是要了解 linuxbrew 将安装在 /home 目录中,而不是安装在 /home/your-user~ 目录)中。
(请参阅答案末尾的原因)。
当您运行以下其他步骤时,请记住这一点。

第 2 步:将 linuxbrew 二进制文件添加到 /home

installation script 会为我们完成:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

第 3 步:检查 /linuxbrew 是否已添加到相关位置

只需导航到 /home 即可完成此操作。
请注意,docs 通过在每个命令前添加 test -d <linuxbrew location> 将其显示为单行。

(阅读有关 here 中的 test 命令的更多信息)。

第四步:将相关环境变量导出到终端

我们需要将 linuxbrew 添加到 PATH 并为当前终端添加更多环境变量。

我们可以将以下 export 添加到终端(等待不要这样做..):

export PATH="/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin${PATH+:$PATH}";

export HOMEBREW_PREFIX="/home/linuxbrew/.linuxbrew";
export HOMEBREW_CELLAR="/home/linuxbrew/.linuxbrew/Cellar";
export HOMEBREW_REPOSITORY="/home/linuxbrew/.linuxbrew/Homebrew";
export MANPATH="/home/linuxbrew/.linuxbrew/share/man${MANPATH+:$MANPATH}:";
export INFOPATH="/home/linuxbrew/.linuxbrew/share/info:${INFOPATH:-}";

或者简单地运行(如果您的 linuxbrew 文件夹在其他位置,则 /home - 更改路径):

eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)

(*) 因为当前终端尚未识别 brew 命令(这是我们现在正在解决的问题),我们必须指定 brew 二进制文件的完整路径:{{1} }

通过以下方式测试此步骤:

1 ) 从当前终端运行 /home/linuxbrew/.linuxbrew/bin/brew shellenv 以查看它是否识别命令。

2 ) 运行 brew 并检查是否已导出所有环境变量以及您是否在 printenv 上看到 /home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin

第 5 步:确保第 4 步在每个终端上运行

我们需要将第 4 步添加到 PATH(在 Debian/Ubuntu 的情况下):

~/.profile

对于 CentOS/Fedora/Red Hat - 将 echo "eval \$($(brew --prefix)/bin/brew shellenv)" >> ~/.profile 替换为 ~/.profile

第 6 步:确保在打开新终端时正在执行 ~/.bash_profile~/.profile

如果您执行了第 5 步并且无法从新终端运行 ~/.bash_profile - 将 brew 之类的测试命令添加到 echo "Hi!"~/.profile
如果您在打开新终端时没有看到 ~/.bash_profile - 转到终端首选项并确保设置了“run command as login shell”属性。
here中阅读更多内容。


为什么安装脚本将 Homebrew 安装到 Hi! - 来自 here

<块引用>

安装脚本将 Homebrew 安装到 /home/linuxbrew/.linuxbrew 尽可能使用 /home/linuxbrew/.linuxbrew 并在您家中 目录在 sudo 否则。 Homebrew 不使用 ~/.linuxbrew 安装后。
使用 sudo 允许 使用更多的二进制包(瓶)而不是安装在您的个人 主目录。

选择前缀 /home/linuxbrew/.linuxbrew 以便用户 没有管理员权限可以要求管理员创建一个 linuxbrew 角色 帐户并仍然受益于预编译的二进制文件。

如果您自己没有管理员权限,请考虑询问您的 管理人员为您创建一个 linuxbrew 角色帐户与 home 目录 /home/linuxbrew/.linuxbrew

答案 4 :(得分:1)

brew现在正式支持Linux-请参阅Homebrew 2.0.0博客文章。如https://brew.sh所示,只需将其复制/粘贴到命令提示符下:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

答案 5 :(得分:0)

因为之前的所有答案对我来说对ubuntu 14.04都不起作用 在这里我做了什么,如果有人得到同样的问题:

git clone https://github.com/Linuxbrew/brew.git ~/.linuxbrew
PATH="$HOME/.linuxbrew/bin:$PATH"
export MANPATH="$(brew --prefix)/share/man:$MANPATH"
export INFOPATH="$(brew --prefix)/share/info:$INFOPATH"

然后

sudo apt-get install gawk
sudo yum install gawk
brew install hello

您可以按照此link获取更多信息。

答案 6 :(得分:0)

截至2019年7月

sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"

export brew=/home/linuxbrew/.linuxbrew/bin

test -d ~/.linuxbrew && eval $(~/.linuxbrew/bin/brew shellenv)

test -d /home/linuxbrew/.linuxbrew && eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)

test -r ~/.profile && echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.profile     // for ubuntu and debian

答案 7 :(得分:0)

2019年10月-带有oh-my-zsh的WSL上的Ubuntu 18.04; instructions在这里效果很好-

(首先,使用 sudo apt-get install build-essential curl文件git 安装先决条件)

最后创建一个包含以下内容的 ~/.zprofile emulate sh -c '. ~/.profile'