首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >来自mkmf的have_header在Jruby中抛出一个错误

来自mkmf的have_header在Jruby中抛出一个错误
EN

Stack Overflow用户
提问于 2016-12-22 09:59:12
回答 1查看 77关注 0票数 0

我有一个测试代码:

代码语言:javascript
复制
require 'mkmf'

puts have_header("iostream.h")

这段代码在Jruby中引发一个错误,如下所示:

查一查碘酒。RuntimeError:编译器无法生成可执行文件。您必须首先安装开发工具。 /home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.rb:456 try_cpp at /home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.rb:587的try_do 在/home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.rb:1091的have_header中阻塞 在/home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.rb:942区checking_for中的阻塞在/home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.rb:320的/home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.rb:350开放处延迟在/home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.rb:350阻止延迟在/home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.rb:320开放在/home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.推迟rb:346 /home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.rb:941 have_header at /home/abd/.rvm/rubies/jruby-9.1.6.0/lib/ruby/stdlib/mkmf.rb:1090 at test.rb:3

我不知道开发工具意味着什么,我搜索互联网时没有发现任何相关信息。

我通过rvm安装了JRuby9.1.6.0,这是我的java版本:

代码语言:javascript
复制
[abd@abd testruby]$ java -version
openjdk version "1.8.0_112"
OpenJDK Runtime Environment (build 1.8.0_112-b15)
OpenJDK 64-Bit Server VM (build 25.112-b15, mixed mode)

我这里用的是Arch linux。

我问题背后的真正原因是,我试着安装gem,由于同样的错误,本机扩展无法构建,我知道gem没有得到维护,但我还是想解决这个问题,因为上面的消息表明我缺少安装。

顺便说一下,我有jdk,而不仅仅是jre。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-09 10:56:41

JRuby C扩展已经被废弃,并且可能已经被删除了,但是我有点脱离了循环。

既然您是在JVM上运行,那么您考虑过替代方案吗?也就是说,如果性能满足您的需要,可以使用Java的BigIntegerBigDecimal,或者使用JNI /JNA包装GMP --看起来已经像有人试过了。请查看,以获得更多的Java。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41280375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档