当 gem 失败时,在哪里可以找到 mkmf.log 文件?

找不到‘ libpq-fe.h 头文件

Extcon.rb 失败

由于某些原因,可能缺少必要的库和/或头,无法创建 Makefile 日志文件了解更多细节。

在哪里可以找到 mkmf.log 文件?

35801 次浏览

Log 文件可以在 gem 的安装目录下找到。

Rvm

如果您正在使用 RVM,那么查找类似于

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

您可以使用以下命令列出所有可用的 mkmf.log 文件:

find ~/.rvm -name mkmf.log

Rbenv

find ~/.rbenv -name mkmf.log

视窗解决方案

如@givanse 所说,mkmf 日志位于 gem 安装目录中。因为这可能很复杂,所以只需要搜索 mkmf 文件。你可以在文件资源管理器或者 PowerShell 中这样做

cd C:\Dev\Ruby22 # Change to reflect your Ruby install dir
Get-ChildItem mkmf* -Recurse
find $GEM_HOME -name mkmf.log

或者

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

chrubyruby-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

rvmruby-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