0

当我试图在我的 OSX 上安装 eventmachine 时,我收到了这个错误。

构建原生扩展。这可能需要一段时间...
错误:安装事件机器时出错:
    错误:无法构建 gem 原生扩展。

        /Users/ncharass/.rvm/rubies/ruby-1.9.2-head/bin/ruby extconf.rb
检查 ruby​​.h、rubysig.h 中的 rb_trap_immediate ... 否
检查 rb_thread_blocking_region()... 是
检查 sys/inotify.h 中的 inotify_init() ... 否
检查 sys/syscall.h 中的 __NR_inotify_init ... 否
检查 sys/uio.h 中的 writev() ... 是
检查 rb_thread_check_ints()... 是
检查 rb_time_new()... 是
检查 sys/event.h... 是的
检查 sys/queue.h... 是的
创建 Makefile

制作
g++ -I。-I/Users/ncharass/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1/x86_64-darwin10.8.0 -I/Users/ncharass/.rvm/rubies/ruby-1.9.2 -head/include/ruby-1.9.1/ruby/backward -I/Users/ncharass/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1 -I。-DBUILD_FOR_RUBY -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_TBR -DHAVE_WRITEV -DHAVE_WRITEV -DHAVE_RB_THREAD_CHECK_INTS -DHAVE_RB_TIME_NEW -DOS_UNIX -DHAVE_SYS_EVENT_H -DHAVE_SYS_QUEUE_H -DHAVE_KQUEUE -DWITH_SSL -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -fno共用-O3 -ggdb -Wextra -Wno-未使用的参数-Wno-括号-Wpointer -arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -o binder.o -c binder.cpp
g++:错误:无法识别的命令行选项“-Wshorten-64-to-32”
制作:*** [binder.o] 错误 1


Gem 文件将继续安装在 /Users/ncharass/.rvm/gems/ruby-1.9.2-head@comp.com/gems/eventmachine-0.12.10 以供检查。
结果记录到 /Users/ncharass/.rvm/gems/ruby-1.9.2-head@comp.com/gems/eventmachine-0.12.10/ext/gem_make.out

这是我的 g++ 版本。

使用内置规范。
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-apple-darwin10.7.4/4.7.0/lto-wrapper
目标:x86_64-apple-darwin10.7.4
配置:../gccgo/configure --enable-languages=c,c++,go --with-ld=/usr/bin/ld
线程模型:posix
gcc 版本 4.7.0 20110520(实验性)(GCC)

非常感谢。

4

1 回答 1

3

在 Google 上环顾四周,这似乎是用于 Ruby 的编译器与用于 EventMachine 的编译器不匹配。Instant Badger上有一篇很好的文章,可能会有所帮助。

于 2012-05-12T03:29:30.143 回答