qkknjwtfcd 发表于 2016-3-3 15:31:00

Linux下Rails 3.1安装sqlite3

  服务器系统是Red Hat 4.1.2-48。默认已安装sqlite3。

gem install sqlite3时报错,原因是系统自带的sqlite3版本过低.
  

安装新版sqlite3

cd /tmp
wget http://www.sqlite.org/sqlite-autoconf-3070800.tar.gz
tar zxf sqlite-autoconf-3070800.tar.gz
cd sqlite-autoconf-3070800
./configure
make
make install

   默认会安装到/usr/local/bin,库文件在/usr/local/lib。

删除旧版本的sqlite3

locate sqlite3
#找到旧版本sqlite3的目录并删除
rm /path/to/sqlite3/old_version

   如果出现以下错误:
  gems/sqlite3-1.3.4/lib/sqlite3/sqlite3_native.so: undefined symbol: sqlite3_open_v2

  解决方法如下:

卸载已安装的sqlite3 gem包
gem uninstall sqlite3

  可能会提示有依赖关系,忽略即可。因为马上会把sqlite3安装上。

通过指定使用的sqlite3的库来安装sqlite3 gem。
  gem install sqlite3 -- --with-sqlite3-lib=/usr/local/lib

  出现该错误的原因是系统在编译sqlite3的gem本地库时,使用了CentOS提供的低版本的sqlite3库。
  通过–with-sqlite3-lib参数来指定正确的sqlite3库的位置即可解决该问题。
  
页: [1]
查看完整版本: Linux下Rails 3.1安装sqlite3