首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gem::尝试使用分叉gem时的LoadError

gem::尝试使用分叉gem时的LoadError
EN

Stack Overflow用户
提问于 2014-04-22 15:54:14
回答 1查看 720关注 0票数 5

我的目标是使用libmspack。这取决于ffi编译器,我已经对ffi编译器进行了分叉,以添加一些自定义代码,并且我希望libmspack使用我的修改版本。我有一个简单的Gemfile:

代码语言:javascript
复制
source 'http://rubygems.org'

gem 'ffi-compiler', :github =>'survili/ffi-compiler'
gem 'libmspack'

当运行'bundle install‘时,’ffi-编译器‘的安装完成得很好,但是'libmspack’安装失败了,它找不到‘ffi-编译器’。(LoadError:无法加载这样的文件-ffi-编译器/编译_任务)

我注意到,如果我从Gemfile中删除' libmspack‘,并尝试使用'bundle exec’安装它,它就可以正常工作。

有人能解释一下,实现我的目标的正确方法是什么,导致libmspack使用自定义ffi编译器创业板?

我找到了这样的帖子,问的也是一样的,但没有答案:Gem::LoadError when using a git repo in Gemfile

提前谢谢你

代码语言:javascript
复制
jackju at macbook-air  ~/tmp/delme1
$ rvm use 2.1.1@stackoverproblem --create
ruby-2.1.1 - #gemset created /home/jackju/.rvm/gems/ruby-2.1.1@stackoverproblem
ruby-2.1.1 - #generating stackoverproblem wrappers...........
Using /home/jackju/.rvm/gems/ruby-2.1.1 with gemset stackoverproblem
jackju at macbook-air  ~/tmp/delme1
$ rvm current
ruby-2.1.1@stackoverproblem
jackju at macbook-air  ~/tmp/delme1
$ vim Gemfile

[1]+  Stopped                 vim Gemfile
jackju at macbook-air  ~/tmp/delme1
$ rvm current
ruby-2.1.1@stackoverproblem
jackju at macbook-air  ~/tmp/delme1
$ gem list

*** LOCAL GEMS ***

bigdecimal (1.2.4)
bundler (1.5.3)
bundler-unload (1.0.2)
executable-hooks (1.3.1)
gem-wrappers (1.2.4)
io-console (0.4.2)
json (1.8.1)
minitest (4.7.5)
psych (2.0.3)
rake (10.1.0)
rdoc (4.1.0)
rubygems-bundler (1.4.2)
rvm (1.11.3.9)
test-unit (2.1.1.0)
jackju at macbook-air  ~/tmp/delme1
$ bundle
Fetching git://github.com/survili/ffi-compiler.git
remote: Reusing existing pack: 260, done.
remote: Counting objects: 5, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 265 (delta 2), reused 0 (delta 0)
Receiving objects: 100% (265/265), 38.59 KiB | 0 bytes/s, done.
Resolving deltas: 100% (116/116), done.
Fetching gem metadata from http://rubygems.org/.........
Fetching additional metadata from http://rubygems.org/..
Resolving dependencies...
Installing rake (10.3.1)
Installing ffi (1.9.3)
Using ffi-compiler (0.1.4) from git://github.com/survili/ffi-compiler.git (at master)

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    /home/jackju/.rvm/rubies/ruby-2.1.1/bin/ruby -rubygems /home/jackju/.rvm/gems/ruby-2.1.1@stackoverproblem/gems/rake-10.3.1/bin/rake RUBYARCHDIR=/home/jackju/.rvm/gems/ruby-2.1.1@stackoverproblem/extensions/x86_64-linux/2.1.0/libmspack-0.0.4 RUBYLIBDIR=/home/jackju/.rvm/gems/ruby-2.1.1@stackoverproblem/extensions/x86_64-linux/2.1.0/libmspack-0.0.4
rake aborted!
LoadError: cannot load such file -- ffi-compiler/compile_task
/home/jackju/.rvm/gems/ruby-2.1.1@stackoverproblem/gems/libmspack-0.0.4/ext/Rakefile:1:in `<top (required)>'
(See full trace by running task with --trace)

rake failed, exit code 1

Gem files will remain installed in /home/jackju/.rvm/gems/ruby-2.1.1@stackoverproblem/gems/libmspack-0.0.4 for inspection.
Results logged to /home/jackju/.rvm/gems/ruby-2.1.1@stackoverproblem/extensions/x86_64-linux/2.1.0/libmspack-0.0.4/gem_make.out
An error occurred while installing libmspack (0.0.4), and Bundler cannot
continue.
Make sure that `gem install libmspack -v '0.0.4'` succeeds before bundling.
jackju at macbook-air  ~/tmp/delme1
$ ls
Gemfile
jackju at macbook-air  ~/tmp/delme1
$ 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-28 08:56:40

问题是缺少“rubygems/任务”,这是在这个创业板:https://github.com/postmodern/rubygems-tasks中发现的。

我能够按照以下步骤在我的机器上安装libmspack:

  1. gem安装rubygems-任务
  2. git克隆git@github.com:survili/ffi-编译器.git
  3. cd ffi编译器
  4. 耙造宝石
  5. gem安装pkg/ffi-编译器-0.1.4
  6. gem安装libmspack -v '0.0.4‘

代码语言:javascript
复制
Successfully installed libmspack-0.0.4 
1 gem installed
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23224394

复制
相关文章

相似问题

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