使用MacOSX 10.12.4,今天第一次运行fastlane slather动作。当fastlane尝试安装gem时,它失败了。看看它生成的fastlane错误中提到的mkmf.log,它在构建nokogiri时显示了这一点:
In file included from conftest.c:1:
In file included from /Users/mstoner/.fastlane/bin/bundle/include/ruby-2.2.0/ruby.h:33:
In file included from /Users/mstoner/.fastlane/bin/bundle/include/ruby-2.2.0/ruby/ruby.h:29:
/Users/mstoner/.fastlane/bin/bundle/include/ruby-2.2.0/ruby/defines.h:26:10: fatal error: 'stdio.h' file not found
#include <stdio.h>
^
1 error generated.
在构建nokogiri gem依赖项时,似乎无法找到stdio.h。我可以完全使用非fastlane脚本中的系统slather gem(“安装gem slather”)。我已经安装了XCode命令行工具,重新启动并尝试以sudo运行fastlane命令,其中没有一个能够解决错误。 nokogiri应该在哪里寻找stdio.h?
答案 0 :(得分:3)
看起来您正在使用fastlane的预先打包(包含,brew)版本,但是这已知存在需要本机ruby扩展的gem依赖项的问题。有关如何解决问题的持续调查(此处:https://github.com/fastlane/fastlane/issues/8431#issuecomment-284428794)
由于尚未修复/发布,您可以通过gem
安装fastlane(最好使用rvm/rbenv
)
请参阅:https://github.com/fastlane/fastlane#installation(有关其他设置方法)