gem install io-extra -v'1.2.6'失败

时间:2015-02-11 04:46:36

标签: ruby

我的红宝石版本是2.2.0

作为安装manageiq软件的一部分,我必须运行以下安装:

gem install io-extra -v' 1.2.6'

我收到此错误:

eugene@3b4d8a92ac5d:~/manageiq/vmdb/manageiq/vmdb$ gem install io-extra -v '1.2.6'
Building native extensions.  This could take a while...
ERROR:  Error installing io-extra:
    ERROR: Failed to build gem native extension.

    /home/eugene/.rvm/rubies/ruby-2.2.0/bin/ruby -r ./siteconf20150211-16945-9agvpk.rb extconf.rb
checking for stdint.h... yes
checking for sys/resource.h... yes
checking for sys/uio.h... yes
checking for closefrom()... no
checking for fdwalk()... no
checking for directio()... no
checking for pread()... yes
checking for pwrite()... yes
checking for writev()... yes
checking for rb_str_set_len() in ruby.h... yes
checking for rb_thread_blocking_region()... no
checking for ttyname()... yes
checking for O_DIRECT in sys/types.h,fcntl.h... yes
creating Makefile

make "DESTDIR=" clean

make "DESTDIR="
compiling io/extra.c
In file included from io/extra.c:41:0:
/home/eugene/.rvm/rubies/ruby-2.2.0/include/ruby-2.2.0/ruby/backward/rubysig.h:14:2: warning: #warning rubysig.h is obsolete [-Wcpp]
 #warning rubysig.h is obsolete
  ^
io/extra.c: In function 'rb_thread_blocking_region':
io/extra.c:52:4: error: 'TRAP_BEG' undeclared (first use in this function)
    TRAP_BEG;
    ^
io/extra.c:52:4: note: each undeclared identifier is reported only once for each function it appears in
io/extra.c:54:4: error: 'TRAP_END' undeclared (first use in this function)
    TRAP_END;
    ^
make: *** [extra.o] Error 1

make failed, exit code 2

Gem files will remain installed in /home/eugene/.rvm/gems/ruby-2.2.0/gems/io-extra-1.2.6 for inspection.
Results logged to /home/eugene/.rvm/gems/ruby-2.2.0/extensions/x86_64-linux/2.2.0/io-extra-1.2.6/gem_make.out

我该怎么做才能克服这个错误?

1 个答案:

答案 0 :(得分:0)

答案来自于询问manageiq的人:

http://talk.manageiq.org/t/how-to-properly-install-manageiq-from-source-on-ubuntu/539

他们建议安装ruby 2.0.0并且运行良好。