berkshelf - gem install berkshelf 失败,无法在 Centos 6 中构建 gecode 库

标签 berkshelf

gem install berkshelf失败 Failed to build gecode library在 Centos 6 中。它失败并显示以下输出。

# /opt/chef/embedded/bin/gem install berkshelf
Building native extensions.  This could take a while...
ERROR:  Error installing berkshelf:
    ERROR: Failed to build gem native extension.

        /opt/chef/embedded/bin/ruby extconf.rb
-> sh /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/dep-selector-libgecode-1.0.2/ext/libgecode3/vendor/gecode-3.7.3/configure --prefix=/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/dep-selector-libgecode-1.0.2/lib/dep-selector-libgecode/vendored-gecode --disable-doc-dot --disable-doc-search --disable-doc-tagfile --disable-doc-chm --disable-doc-docset --disable-qt --disable-examples --disable-flatzinc
checking for the host operating system... Linux
checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... no
checking for cxx... no
checking for cc++... no
checking for cl.exe... no
checking for FCC... no
checking for KCC... no
checking for RCC... no
checking for xlC_r... no
checking for xlC... no
checking whether the C++ compiler works... no
configure: error: in `/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/dep-selector-libgecode-1.0.2/ext/libgecode3/vendor/gecode-3.7.3':
configure: error: C++ compiler cannot create executables
See `config.log' for more details
extconf.rb:98:in `block in run': Failed to build gecode library. (GecodeBuild::BuildError)
    from extconf.rb:97:in `chdir'
    from extconf.rb:97:in `run'
    from extconf.rb:104:in `<main>'


Gem files will remain installed in /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/dep-selector-libgecode-1.0.2 for inspection.
Results logged to /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/dep-selector-libgecode-1.0.2/ext/libgecode3/gem_make.out

最佳答案

已安装 yum install gecode-devel -y但仍然失败。

套装USE_SYSTEM_GECODE=1 .

# env USE_SYSTEM_GECODE=1 /opt/chef/embedded/bin/gem install berkshelf

这次失败,输出如下。
Building native extensions.  This could take a while...
Fetching: dep_selector-1.0.3.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing berkshelf:
    ERROR: Failed to build gem native extension.

        /opt/chef/embedded/bin/ruby extconf.rb
checking for main() in -lgecodesupport... yes
checking for main() in -lgecodesupport... yes
checking for main() in -lgecodekernel... yes
checking for main() in -lgecodeint... yes
checking for main() in -lgecodeminimodel... yes
checking for main() in -lgecodesearch... yes
creating Makefile

make
compiling define_dummy_init.cxx
make: g++: Command not found
make: *** [define_dummy_init.o] Error 127


Gem files will remain installed in /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/dep_selector-1.0.3 for inspection.
Results logged to /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/dep_selector-1.0.3/ext/dep_gecode/gem_make.out

安装了 C++ 编译器。
# yum install gcc-c++
现在应该成功了。
 env USE_SYSTEM_GECODE=1 /opt/chef/embedded/bin/gem install berkshelf
Building native extensions.  This could take a while...
Fetching: solve-1.2.1.gem (100%)
Fetching: thor-0.19.1.gem (100%)
Fetching: sawyer-0.5.5.gem (100%)
Fetching: octokit-3.5.2.gem (100%)
Fetching: berkshelf-3.2.0.gem (100%)
Successfully installed dep_selector-1.0.3
Successfully installed solve-1.2.1
Successfully installed thor-0.19.1
Successfully installed sawyer-0.5.5
Successfully installed octokit-3.5.2
Successfully installed berkshelf-3.2.0
6 gems installed
Installing ri documentation for dep_selector-1.0.3...
Installing ri documentation for solve-1.2.1...
Installing ri documentation for thor-0.19.1...
Installing ri documentation for sawyer-0.5.5...
Installing ri documentation for octokit-3.5.2...
unable to convert "\xE2" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for lib/octokit/client/stats.rb, skipping
unable to convert "\xE2" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for lib/octokit/client/contents.rb, skipping
unable to convert "\xE2" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for lib/octokit/client/repositories.rb, skipping
unable to convert "\xE2" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for lib/octokit/client/users.rb, skipping
unable to convert "\xE2" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for lib/octokit/client/gists.rb, skipping
Installing ri documentation for berkshelf-3.2.0...
Installing RDoc documentation for dep_selector-1.0.3...
Installing RDoc documentation for solve-1.2.1...
Installing RDoc documentation for thor-0.19.1...
Installing RDoc documentation for sawyer-0.5.5...
Installing RDoc documentation for octokit-3.5.2...
unable to convert "\xE2" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for lib/octokit/client/stats.rb, skipping
unable to convert "\xE2" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for lib/octokit/client/contents.rb, skipping
unable to convert "\xE2" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for lib/octokit/client/repositories.rb, skipping
unable to convert "\xE2" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for lib/octokit/client/users.rb, skipping
unable to convert "\xE2" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for lib/octokit/client/gists.rb, skipping
Installing RDoc documentation for berkshelf-3.2.0...

关于berkshelf - gem install berkshelf 失败,无法在 Centos 6 中构建 gecode 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26912779/

相关文章:

ssl - 将 Berkshelf 与自定义 CA 证书结合使用

virtualbox - Vagrant:网络类型 'bridged' 无效。请使用有效的网络类型

chef-infra - 使用 Berkshelf 时无法找到 Recipe 模板

chef-infra - 如何使用 Berkshelf 管理组织 repo ?

centos - 在 CentOS 6.5 上与 Chef Solo 一起 Vagrant : chef could not find recipe repoforge for cookbook yum?

chef-infra - 初学者对berkshelf和 Chef 感到困惑

chef-infra - 在 Chef 中使用berkshelf时如何使用手写 Recipe ?

chef-infra - 如何配置berks API服务器?

chef-infra - 我已经安装了chef-dk并开始使用berkshelf但是berks上传失败

ruby - 我如何以编程方式查询 Vagrant 的配置状态?