Могу ли я использовать brew на Ubuntu?

Я пытался использовать brew для установки пакетов в Ubuntu. Я попытался установить linuxbrew на Ubuntu, но не смог. Вот как я установил:

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)"

Я получил предупреждение здесь

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

Я вижу мой bash.bashrc в home/etc и добавляю это:

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

Затем я попытался заварить доктора, но не получил команду "заваривать". Как я могу использовать Brew на Ubuntu? Спасибо!

9 ответов

Решение

Я только что попытался установить его с помощью команды 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"

Он должен работать..

По состоянию на февраль 2018 года установка brew на Ubuntu (у меня 17.10) машина так же проста, как:

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+D. Наслаждаться.

По состоянию на август 2020 г. (также работает для kali linux)

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

Следующие шаги работали для меня:

  • Клонировать его из github

    git clone https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew
    
  • Откройте файл.bash_profile, используя vi ~/.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 в вашем терминале, чтобы проверить его существование.

Вы можете просто следовать инструкциям из , но я думаю, что лучше понять, чего эти инструкции пытаются достичь.

Понимание шагов установки может сэкономить время


Шаг 1. Выберите место

Прежде всего, важно понимать, что linuxbrew будет установлен в директорию, а не внутрь /home/your-user( ~каталог).
(См. причину этого в конце ответа).
Имейте это в виду, когда будете выполнять другие шаги, описанные ниже.

Шаг 2: Добавьте исполняемые файлы linuxbrew в :

Скрипт установки сделает это за нас:

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

Шаг 3. Убедитесь, что /linuxbrewбыл добавлен в соответствующее место

Это можно сделать, просто перейдя к .
Обратите внимание, что документации Homebrew on Linuxдокументы показывают его как однострочный, добавляя test -d <linuxbrew location>перед каждой командой.

(Подробнее о testкоманда здесь).

Шаг 4: Экспортируйте соответствующие переменные среды в терминал

Нам нужно добавить linuxbrew и добавить еще несколько переменных окружения в текущий терминал.

Мы можем просто добавить следующее exports на терминал (подождите, не делайте этого ..):

      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: /home/linuxbrew/.linuxbrew/bin/brew shellenv

Проверьте этот шаг:

1) Запустите из текущего терминала, чтобы увидеть, идентифицирует ли он команду.

2 ) Бежать printenvи проверьте, все ли переменные среды были экспортированы и что вы видите /home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbinна PATH.

Шаг 5. Убедитесь, что шаг 4 выполняется на каждом терминале.

Нам нужно добавить шаг 4 (в случае Debian/Ubuntu):

      echo "eval \$($(brew --prefix)/bin/brew shellenv)" >> ~/.profile

Для CentOS/Fedora/Red Hat — замените на .

Шаг 6: Убедитесь, что или выполняются при открытии нового терминала

Если вы выполнили шаг 5 и не смогли запустить brewиз нового терминала - добавьте тестовую команду, например echo "Hi!"к ~/.profileили же ~/.bash_profile.
Если вы не видите Hi!когда вы открываете новый терминал - перейдите к настройкам терминала и убедитесь, что установлен атрибут « запустить команду как оболочку входа в систему ».
Подробнее читайте здесь .


Почему скрипт установки устанавливает Homebrew в — отсюда:

Сценарий установки устанавливает Homebrew, используя, если это возможно, и в ваш домашний каталог по адресу ~/.linuxbrewв противном случае. Хоумбрю не использует sudoпосле установки.
Использование позволяет использовать больше бинарных пакетов (бутылок), чем установка в вашем личном домашнем каталоге.

Префикс /home/linuxbrew/.linuxbrewбыл выбран таким образом, чтобы пользователи без доступа администратора могли попросить администратора создать учетную запись роли linuxbrew и по-прежнему получать преимущества от предварительно скомпилированных двоичных файлов.

Если у вас нет прав администратора, попросите своих администраторов создать для вас учетную запись роли linuxbrew с домашним каталогом ./home/linuxbrew.

Linux теперь официально поддерживается в brew - см. Сообщение в блоге Homebrew 2.0.0. Как показано на https://brew.sh, просто скопируйте / вставьте это в командную строку:

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

Поскольку все предыдущие ответы не работают для меня для 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

Вы можете перейти по этой ссылке для получения дополнительной информации.

Октябрь 2019 г. - Ubuntu 18.04 на WSL с oh-my-zsh; в инструкции здесь работали отлично -

(сначала установите необходимые компоненты, используя sudo apt-get install build-essential curl file git)

наконец создать ~/.zprofile со следующим содержанием: emulate sh -c '. ~/.profile'

Что делать

         cd /home/linuxbrew/.linuxbrew/bin
    ./brew doctor

Вы получите, какой путь для экспорта

         echo 'export PATH="/home/linuxbrew/.linuxbrew/bin:$PATH"' >> ~/.zshrc
Другие вопросы по тегам