Как установить sqlite-ruby в Linux, если sqlite3 не находится в / usr / local? - PullRequest
1 голос
/ 20 марта 2010

Я пытаюсь установить sqlite3 и sqlite-ruby (ruby 1.8.6) на ящик linux, где у меня нет root.

Я скачал исходный код sqlite3, двоичные файлы и разделяемую библиотеку и поместил их все в каталог с именем sqlite3

Затем я пытаюсь установить sqlite-ruby, используя

gem install sqlite-ruby --with-sqlite-dir=the_path_sqlite/sqlite3

но я продолжаю получать сообщение об ошибке ...

checking for main() in -lsqlite... no
checking for sqlite.h... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
 --with-opt-dir
 --without-opt-dir
 --with-opt-include
 --without-opt-include=${opt-dir}/include
 --with-opt-lib
 --without-opt-lib=${opt-dir}/lib
 --with-make-prog
 --without-make-prog
 --srcdir=.
 --curdir
 --ruby=/data/scratch/bettbra/common/packages/ruby-1.8.6/bin/ruby
 --with-sqlite-dir
 --with-sqlite-include
 --without-sqlite-include=${sqlite-dir}/include
 --with-sqlite-lib
 --without-sqlite-lib=${sqlite-dir}/lib
 --with-sqlitelib
 --without-sqlitelib

Ответы [ 3 ]

2 голосов
/ 27 мая 2010

Я использую Ubuntu (тип Debain Linux). мне удалось решить это следующим образом:

sudo apt-get install sqlite3 libsqlite3-dev sudo gem install sqlite3-ruby

1 голос
/ 04 июня 2011

Вы указываете, где файлы разработки (заголовки и lib) используют следующий синтаксис:

gem install sqlite3 -- --with-sqlite3-include=$HOME/include --with-sqlite3-lib=$HOME/lib

Обратите внимание на -, которые отмечают конец gem параметров. После них параметры передаются процессу компиляции расширения.

Однако я второй совет Рувима; Вы действительно должны рассмотреть возможность использования RVM. Это благословение для подобных ситуаций И ​​для плавного перехода на Ruby 1.9.

1 голос
/ 27 мая 2010

Можно ли установить RVM (Ruby Version Manager)?

https://rvm.io/rvm/install/

С помощью RVM вы устанавливаете гемы и т.д. как пользователь без привилегий sudo / root.

...