6

У меня есть пользовательский доступ к экземпляру Ubuntu, и я хотел бы использовать CTags. Ошибка говорит:

The program 'ctags' can be found in the following packages:
 * exuberant-ctags
 * emacs22-bin-common
 * emacs21-bin-common
 * elvis-tools
 * emacs-snapshot-bin-common
Ask your administrator to install one of them
-bash: ctags: command not found

Это и все инструкции онлайн указывают на то, что мне нужно быть пользователем root. Есть ли способ установить его как пользователь?

6 ответов6

15

Да.

Вам нужно будет скомпилировать его самостоятельно и установить в своем домашнем каталоге.

Загрузите источник ctags: http://prdownloads.sourceforge.net/ctags/ctags-5.8.tar.gz

В часовой оболочке:

$ tar zxf ctags-5.8.tar.gz
$ cd ctags-5.8
$ ./configure --prefix=$HOME
$ make && make install

Это скомпилирует и установит ctags в вашем домашнем каталоге. Полученный двоичный файл будет иметь вид: $ HOME/bin/ctags

Теперь вам нужно изменить переменную среды PATH перед запуском vim.

$ vim $HOME/.bashrc (or whichever shell you're using)

поместите эту строку в ваш .bashrc

export PATH="$HOME/bin:$PATH"

Теперь вам нужно будет использовать ваш .bashrc (помните, что .bashrc обычно загружается только из неинтерактивных оболочек. Убедитесь, что вы используете источник .bashrc из .bash_profile)

Если вам нужно, измените ваш .bash_profile и убедитесь, что он имеет такую строку:

. $HOME/.bashrc

или же

source $HOME/.bashrc

Чтобы продолжить без закрытия оболочки, просто введите:

$ . $HOME/.bashrc

Теперь вы можете запустить vim, и ctags будет работать.

6

Вам не нужно ничего компилировать. Ctags - это всего лишь одна двоичная программа, поэтому вы можете скачать соответствующий пакет, распаковать его и поместить двоичный файл на свой путь. Как это:

cd
mkdir tmp
cd tmp 
wget http://mirrors.kernel.org/ubuntu/pool/main/e/exuberant-ctags/exuberant-ctags_5.5.4-1_i386.deb
dpkg -x exuberant-ctags_5.5.4-1_i386.deb .
mkdir ~/bin
cp usr/bin/ctags-exuberant ~/bin
cd ~/bin
ln -sf ctags-exuberant ctags
export PATH=$PATH:$HOME/bin
1

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

1

Если вы тот, кто установил этот компьютер с Ubuntu, то вы пользователь с uid 1000, что означает, что вы можете запускать команды, требующие root помощью команды sudo , например

sudo app-get install exuberant-ctags

Возможно, вам придется предшествовать этому с

sudo apt-get update

чтобы получить свежую информацию о пакете.

1

Конечно, просто установите его в свой домашний каталог из источника.

Перейдите на http://ctags.sourceforge.net/ и загрузите последнюю версию. Разверните его, откройте терминал и перейдите в каталог, в котором вы его развернули, затем сделайте следующее:

./configure --prefix=`( cd ~ ; pwd ~ )`
make all
make install

Теперь, отредактируйте ваш PATH с помощью этого (предполагая bash, который, вероятно, используется вами, если вы не знаете, как сделать это без посторонней помощи):

export PATH=$PATH:`( cd ~ ; pwd ~ )`/bin

Вы можете добавить эту последнюю строку в ваш файл .bashrc или .bash_profile.

0

Вы всегда можете установить его локально, скажем, в своем домашнем каталоге. После этого добавьте каталог, в котором находится ctags, в переменную окружения PATH yout shell.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .