When a gem fails, where do I find the mkmf.log file?

最后都变了- 提交于 2020-01-11 15:13:36

问题


Can't find the 'libpq-fe.h header

** extconf.rb failed **

Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details.

Where do I find the mkmf.log file?


回答1:


The mkmf.log file can be found under the gem's installation directory.

rvm

If you are using RVM, then look for a directory similar to

~/.rvm/gems/ruby-1.9.3-p194/gems/some-cool-gem-name/ext/mkmf.log

You can list all the mkmf.log files available with this command:

find ~/.rvm -name mkmf.log

rbenv

find ~/.rbenv -name mkmf.log



回答2:


Windows solution

As @givanse said, the mkmf logs are in the gem installation directory. Because that can be complicated, you should just search for the mkmf file. You can do that in Windows explorer or in PowerShell

cd C:\Dev\Ruby22 # Change to reflect your Ruby install dir
Get-ChildItem mkmf* -Recurse



回答3:


find $GEM_HOME -name mkmf.log

or

$GEM_HOME/extensions/$arch/$ruby_version-static/$gem_name-$gem_version/mkmf.log

chruby, ruby-2.6.3:

GEM_HOME: /home/yuri/.gem/ruby/2.6.3
arch: x86_64-linux
ruby_version: 2.6.0
gem_name: openssl
gem_version: 2.0.0

/home/yuri/.gem/ruby/2.6.3/extensions/x86_64-linux/2.6.0-static/openssl-2.0.0/mkmf.log

rvm, ruby-2.6.3:

GEM_HOME: /home/yuri/.rvm/gems/ruby-2.6.3
arch: x86_64-linux
ruby_version: 2.6.0
gem_name: nokogiri
gem_version: 1.10.3

/home/yuri/.gem/ruby/2.6.3/extensions/x86_64-linux/2.6.0-static/nokogiri-1.10.3/mkmf.log


来源:https://stackoverflow.com/questions/20379274/when-a-gem-fails-where-do-i-find-the-mkmf-log-file

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!