2015-07-10 117 views
1

我正在使用rubystack2.2.0。当我运行捆绑安装,使用bcrypt一个新的项目,我得到这个错误:安装bcrypt 3.1.7时发生错误,捆绑器无法继续运行

与原生扩展

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

这里安装bcrypt 3.1.7的详细输出

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

/ws/sachilig-sjc/new/ruby/bin/ruby -r ./siteconf20150709-16222-82kbqs.rb extconf.rb 
checking for ruby/util.h... yes 
creating Makefile 

make "DESTDIR=" clean 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in pattern match (m//) at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Argument "UUUUUUUUUUUU" isn't numeric in division (/) at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Illegal division by zero at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
BEGIN failed--compilation aborted at /ws/sachilig-sjc/new/perl/lib/5.16.3/File/Basename.pm line 52. 
Compilation failed in require at /router/bin/make line 37. 
BEGIN failed--compilation aborted at /router/bin/make line 37. 

make "DESTDIR=" 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in concatenation (.) or string at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Use of uninitialized value in pattern match (m//) at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Argument "UUUUUUUUUUUU" isn't numeric in division (/) at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
Illegal division by zero at /ws/sachilig-sjc/new/perl/lib/5.16.3/warnings.pm line 390. 
BEGIN failed--compilation aborted at /ws/sachilig-sjc/new/perl/lib/5.16.3/File/Basename.pm line 52. 
Compilation failed in require at /router/bin/make line 37. 
BEGIN failed--compilation aborted at /router/bin/make line 37. 

make failed, exit code 255 

Gem files will remain installed in /ws/sachilig-sjc/new/ruby/lib/ruby/gems/2.2.0/gems/bcrypt-3.1.7 for inspection. 
Results logged to /ws/sachilig-sjc/new/ruby/lib/ruby/gems/2.2.0/extensions/x86_64-linux/2.2.0-static/bcrypt-3.1.7/gem_make.out 
An error occurred while installing bcrypt (3.1.7), and Bundler cannot continue. 
Make sure that gem install bcrypt -v '3.1.7' succeeds before bundling. 
+0

“请确保gem在捆绑之前安装bcrypt -v'3.1.7'。”你是否? – Braiam

+0

是@Braiam。这是在开始时提供的。 构建原生扩展。这可能需要一段时间... 错误:安装bcrypt时出错: \t错误:无法构建gem本机扩展。 ,其余的错误与上述相同。 – Novice

回答

1

我相信我有这个同样的问题,我可能已经使用 rm -rf Gemfile.lock

解决它,然后删除该版本的Infor从您的Gemfile,然后mation尝试运行 gem install bcrypt 其是否正常工作......如果是这样: bundle bundle update 如果不工作,那么你有ruby -vrails -v错误的版本。在这种情况下,您可能需要rbenv install Ruby,然后gem install Rails。 我不确定我的确切事件顺序是什么,但我一直在做这样的事情,并最终有东西放弃。

顺便说一句,你的红宝石绝对不是最新的2.2。 0所以你可能想要去安装红宝石.. https://gorails.com有一些东西。

+0

谢谢。我删除了Gemfile.Lock,它没有解决。我使用bitnami的rubystack 2.2.0。它带有ruby 2.2.0和rails 4.2.3。 – Novice

1

它帮助我在我的rails应用程序的Gemfile中用替换gem 'bcrypt', '~> 3.1.7'

不同之处在于,打包程序可以加载随最后(次要)数量而变化的任何宝石。

然后我从命令行运行bundle install,它的工作方式就像奇迹。

相关问题