本周我买了一台新的Mac,并且在安装这个宝石时遇到了很大的问题。这在我的旧Mac上从来都不是问题,但在这个问题上似乎特别困难。
我已经通过Homebrew,Xcode4.4(使用命令行工具)和gcc4.2安装了libvirt。我已经通过符号链接使gcc4.2成为默认编译器。
gem install ruby-libvirt -v '0.4.0'
失败,因为找不到标题
如果我传入标题和库的路径,如下:
ruby-libvirt -v '0.4.0' -V -- --with-libvirt-include=/usr/local/Cellar/libvirt/0.9.11.3/include/ --with-libvirt-lib=/usr/local/Cellar/libvirt/0.9.11.3/lib/
,它编译得很好,但在链接以下错误时失败:
linking shared-object _libvirt.bundle
ld: library not found for -lruby.1.9.1
collect2: ld returned 1 exit status
make: *** [_libvirt.bundle] Error 1
我已经通过RVM安装了Ruby 1.9.3并且没有安装其他原生扩展的任何麻烦,所以我不明白为什么在这种情况下它找不到ruby库。
有没有人有任何想法?非常感谢帮助。
答案 0 :(得分:1)
我通过使用brew安装外部libvirt来构建ruby-libvirt-0.4.0/ext/libvirt
。
以下是我成功安装libvirt的方法。
brew install libvirt
ruby extconf.rb --with-libvirt-include=/usr/local/include/libvirt --with-libvirt-lib=/usr/local/lib/libvirt
gem install ruby-libvirt -v '0.4.0' -V -- --with-libvirt-include=/usr/local/Cellar/libvirt/1.1.4/include/libvirt --with-libvirt-lib=/usr/local/Cellar/libvirt/1.1.4/lib
希望这会有所帮助。
答案 1 :(得分:0)
我终于解决了这个问题。事实证明,命令行工具未正确安装。需要将以下行添加到.zshrc文件中(或者适用于您选择的shell):
export PATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:$PATH
答案 2 :(得分:0)
要安装gem,您需要安装libvirt库。使用' Homebrew' (mac的软件包管理器):
brew install libvirt
bundle install
你得到的确切错误可能是:
An error occurred while installing ruby-libvirt (0.4.0)
答案 3 :(得分:0)
您只需要在安装包之前安装 libvirt。
brew install libvirt