Установка rlwrap на Linux - без прав root
Я пытаюсь установить rlwrap. У меня нет root-прав.
Я сделал следующее, чтобы установить rlwrap, используя несколько шагов, упомянутых в Интернете:
gunzip rlwrap*.gz
tar -xvf rlwrap*.tar
cd rlwrap
./configure
make
make check
make install
Но на последнем шаге, когда я делаю "make install", я получаю сообщение об ошибке
/usr/bin/install: cannot create regular file `/usr/local/bin/rlwrap': Read-only file system
make[2]: *** [install-binPROGRAMS] Error 1
Я попытался "sudo make install", я все еще получаю ту же ошибку.
Какие есть варианты для установки rlwrap?
Спасибо
2 ответа
Чтобы установить его без прав root, вам необходимо настроить его следующим образом:
./configure --prefix=$HOME
после чего 'make install' установит rlwrap в $ HOME / bin
(Выше информация из файла INSTALL в корневой папке rlwrap)
Вот полные инструкции. Исходя из опыта, всегда полезно проверить официальный способ установки программного обеспечения (даже если он не имеет root-прав), чтобы убедиться, что вы ничего не упустили. Это основано на той проверке здравомыслия.
#!/usr/bin/env bash
# --- Install rlwrap without sudo
# - make sure .local/bin exists
mkdir -p ~/.local/bin/
# - download most recent version of rlwrap -- as of this writing it is 0.46.1 see: https://github.com/hanslub42/rlwrap/releases
cd ~
wget https://github.com/hanslub42/rlwrap/releases/download/0.46.1/rlwrap-0.46.1.tar.gz
# untar rlwrap-0.46.1.tar.gz
tar -xvf rlwrap-0.46.1.tar.gz
cd rlwrap-0.46.1
# - Install rwlwrap without sudo: https://github.com/hanslub42/rlwrap#installation
./configure --prefix=$HOME/.local
make
make install
# - check install (should be the chosen one above)
rlwrap --version
# - clean up
rm -rf ~/rlwrap-0.46.1
rm ~/rlwrap-0.46.1.tar.gz
# - Add .local/bin to path if it's not already there
#export PATH=$PATH:$HOME/.local/bin
if [[ ":$PATH:" != *":$HOME/.local/bin:"* ]]; then
echo "Need to put $HOME/.local/bin in path"
# PATH="$HOME/.local/bin:$PATH"
fi
tr ':' '\n' <<< "$PATH"
работает:
(iit_synthesis) brando9~/rlwrap-0.46.1 $ rlwrap --version
rlwrap 0.46.1