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]