gpt4 book ai didi

ruby - Rails 3 不会用 rvm 安装 sqlite3-ruby gem?

转载 作者:数据小太阳 更新时间:2023-10-29 07:03:21 25 4
gpt4 key购买 nike

我正在试用 rvm,并用它安装了 ruby​​ 1.9.2 和 rails 3。我需要重新安装 sqlite3-ruby gem(因为 rvm 为不同版本的 ruby​​ 将所有 gem 分开)。

问题是,当我尝试时,我得到:

     gem install sqlite3-ruby
/home/jenny/.rvm/rubies/ruby-1.9.2-p0/bin/gem:4: warning: Insecure world writable dir /home/jenny/.rvm/gems/ruby-1.9.2-p0/bin in PATH, mode 040777
Building native extensions. This could take a while...
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.

/home/jenny/.rvm/rubies/ruby-1.9.2-p0/bin/ruby extconf.rb
checking for sqlite3.h... yes
checking for sqlite3_libversion_number() in -lsqlite3... yes
checking for rb_proc_arity()... yes
checking for sqlite3_initialize()... yes
checking for sqlite3_next_stmt()... yes
checking for sqlite3_column_database_name()... yes
checking for sqlite3_enable_load_extension()... no
checking for sqlite3_load_extension()... no
creating Makefile

make
gcc -I. -I/home/jenny/.rvm/rubies/ruby-1.9.2-p0/include/ruby-1.9.1/i686-linux -I/home/jenny/.rvm/rubies/ruby-1.9.2-p0/include/ruby-1.9.1/ruby/backward -I/home/jenny/.rvm/rubies/ruby-1.9.2-p0/include/ruby-1.9.1 -I. -DHAVE_RB_PROC_ARITY -DHAVE_SQLITE3_INITIALIZE -DHAVE_SQLITE3_NEXT_STMT -DHAVE_SQLITE3_COLUMN_DATABASE_NAME -I/usr/local/include -I/opt/local/include -I/sw/local/include -I/usr/include -D_FILE_OFFSET_BITS=64 -fPIC -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-long-long -fPIC -o exception.o -c exception.c
In file included from ./sqlite3_ruby.h:42,
from exception.c:1:
./backup.h:7: error: expected specifier-qualifier-list before ‘sqlite3_backup’
make: *** [exception.o] Error 1

我真的不太清楚该怎么做...我之前已经在这台机器上安装了 sqlite3-ruby(使用 rails 2.3.5)当我尝试重新安装这个 gem(使用 rvm 系统设置)它没有也不要安装在 ruby​​ 1.8.7 环境中。

rvm 破坏了 gem 吗?新 gem 是否与我的操作系统不兼容(我正在运行 opensuse linux)

编辑:当我尝试在我的常规 ruby​​ 环境中重新安装(卸载而不是再次安装)sqlite3-ruby 时,我得到了同样的错误,但随后看到我的 gem 列表中列出的 sqlite3-ruby(不确定它是否以某种方式恢复从备份,或安装尽管有错误)

最佳答案

我会投票赞成或评论布伦南的回答,但我还没有足够的分数来做这件事。我想我会留下这个答案,以防它对其他人有帮助:我在这个上面花了一段时间......我安装了 Ruby 1.9.1 和 Rails 3.0.3 并且可以正常工作,但决定转向 RVM。根据说明安装了 RVM,然后再次安装 rails,所有肉汁......然后尝试捆绑安装并使用 sqlite3 遇到此错误:

Building native extensions.  This could take a while...
ERROR: Error installing sqlite3:
ERROR: Failed to build gem native extension.

/Users/Jasonp/.rvm/rubies/ruby-1.9.2-p136/bin/ruby extconf.rb
checking for sqlite3.h... yes
checking for sqlite3_libversion_number() in -lsqlite3... no
sqlite3 is missing. Try 'port install sqlite3 +universal'
or 'yum install sqlite3-devel' and check your shared library search path (the
location where your sqlite3 shared library is located).
*** 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.

我知道我之前的配置中使用过 SQLite3,所以我去找了原来的目录。这是 usr/local/sqlite3

我尝试将其用作 --with-sqlite3-dir= 路径,但没有奏效。然后我只是为了好玩:

gem install sqlite3-ruby -- --with-sqlite3-dir=/usr/local/lib

无论出于何种原因,这都有效。所以,以防万一有人

关于ruby - Rails 3 不会用 rvm 安装 sqlite3-ruby gem?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4450823/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com