ruby - 通过 ruby​​gems 安装 Kyoto Cabinet 失败

标签 ruby ruby-on-rails-3 rubygems kyotocabinet

我正在尝试通过 ruby​​ gems 安装 Kyoto Cabinet。我正在放入 Gemfile

gem "kyotocabinet", "~> 1.0"

相对于here 但是当我运行 bundle 时它失败了

setting variables ...
$CFLAGS = -I. -I/usr/local/include -Wall $(cflags)  -fPIC -O2
$LDFLAGS = -L.  -rdynamic -Wl,-export-dynamic -L. -L/usr/local/lib
$libs =  -lkyotocabinet -lz -lstdc++ -lrt -lpthread -lm -lc
checking for kccommon.h... yes
creating Makefile

make
g++ -I. -I/home/gerry/.rvm/rubies/ruby-1.9.2-p136/include/ruby-1.9.1/x86_64-linux -I/home/gerry/.rvm/rubies/ruby-1.9.2-p136/include/ruby-1.9.1/ruby/backward -I/home/gerry/.rvm/rubies/ruby-1.9.2-p136/include/ruby-1.9.1 -I. -DHAVE_KCCOMMON_H    -fPIC -I. -I/usr/local/include -Wall -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wno-long-long  -fPIC -O2   -o kyotocabinet.o -c kyotocabinet.cc
kyotocabinet.cc:29: error: ‘INT32_MAX’ was not declared in this scope
kyotocabinet.cc:30: error: ‘INT32_MAX’ was not declared in this scope
kyotocabinet.cc:61: warning: type qualifiers ignored on function return type
kyotocabinet.cc:320: warning: type qualifiers ignored on function return type
kyotocabinet.cc: In function ‘void init_err()’:
kyotocabinet.cc:387: error: ‘NOFILE’ is not a member of ‘kyotocabinet::BasicDB::Error’
kyotocabinet.cc: In function ‘VALUE db_increment(int, VALUE*, VALUE)’:
kyotocabinet.cc:1009: error: ‘INT64_MIN’ was not declared in this scope
kyotocabinet.cc: In function ‘VALUE db_synchronize(int, VALUE*, VALUE)’:
kyotocabinet.cc:1094: error: cannot declare variable ‘proc’ to be of abstract type ‘SoftFileProcessor’
kyotocabinet.cc:288: note:   because the following virtual functions are pure within ‘SoftFileProcessor’:
/usr/local/include/kcdb.h:1070: note:   virtual bool
kyotocabinet::BasicDB::FileProcessor::process(const std::string&, int64_t, int64_t)
make: *** [kyotocabinet.o] Error 1

如果有人知道绕过此错误的方法,请提供帮助!我使用的是 Ubuntu 10.10,仅供引用。

非常感谢您的帮助!

最佳答案

尝试改用 gem“kyotocabinet-ruby”。

关于ruby - 通过 ruby​​gems 安装 Kyoto Cabinet 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6669758/

相关文章:

ruby-on-rails - rspec any_instance stub 不会重新启动旧实例

ruby-on-rails - Delayed_Job,如何为 user_mailer.rb 方法设置优先级

ruby-on-rails - 如何确定是哪个 gem 导致特定 gem 被 bundle ?

ruby-on-rails - 如何为现有的 Rails 应用构建版本 API?

ruby - 是否可以直接从 Ruby 代码调用 Rust 的结构字段,而无需将 extern "C"getter 实现到相应的字段

ruby - 如何在 Ruby 中动态确定方法名称

ruby - 如何处理 Ruby 1.9.3 CSV 类中的字符编码异常?

ruby - 使用 Ruby FTPS 进行加密传输

ruby - 如何将带有\xf6 字符的字符串转换为人类可读的字符串?

javascript - 帮助将数据从一个 HTML 表单传输/存储到另一个表单