Как мне закончить установку программы из исходного кода?

Я скомпилировал sqlite3 из исходного кода, версия 3.6.16. я использовал --prefix=/usr/bin как мой единственный вариант компиляции.

Двоичные файлы скомпилированы и установлены правильно, но в каталоге /usr/bin/sqlite3/bin, Таким образом, приложение находится в /usr/bin/sqlite3/bin/sqlite3,

Теперь, как мне "сказать Linux", что sqlite3 там установлен? Поэтому, когда я бегу which sqlite3 это напечатало бы /usr/bin/sqlite3/bin/sqlite3?

Мне нужна эта версия специально sqlite3 для компиляции RubyGem; sqlite3-ruby, v1.3.0 или выше.

Я предполагаю, что буду добавлять PATH или что-то мое ~/.profile а затем работает source .profile перезагрузить изменения. Что значит "рассказывать Linux", где установлены приложения, для вызова? symlinks?

2 ответа

Решение

Обычно при компиляции исходного кода я использовал бы что-то похожее на следующее:

--prefix=/usr

Я подозреваю, что это расставит все по своим местам.

Попробуйте редактировать ~/.bashrc включить эту строку:

export PATH=$PATH:/usr/bin/sqlite3/bin/

Еще один способ обойтись без изменения пути - создать символическую ссылку:

sudo ln -s /usr/bin/sqlite3/bin/sqlite3 /usr/local/bin/sqlite3

Имейте в виду, что если вы установили sqlite3пакета, его исполняемый файл будет конфликтовать с вашей вновь скомпилированной версией. Тебе придется бежать /usr/bin/sqlite3/bin/sqlite3 в явном виде.

Кстати, используя --prefix=/usr/bin как вариант компиляции не очень хорошая идея, я бы порекомендовал --prefix=/usr/local вместо.

Другие вопросы по тегам