Как мне закончить установку программы из исходного кода?
Я скомпилировал 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 вместо.