Ruby mkmf生成一个奇怪的Makefile

Ruby mkmf生成一个奇怪的Makefile,ruby,makefile,travis-ci,mkmf,Ruby,Makefile,Travis Ci,Mkmf,当我使用本机C绑定构建gem时,会收到以下警告: ld: warning: directory not found for option '-L/Users/travis/.sm/pkg/active/lib' 我在生成的Makefile中发现了以下几行: CFLAGS = $(CCDLFLAGS) -O3 -I/Users/travis/.sm/pkg/active/include -fPIC -mmacosx-version-min=10.6 -pipe -std=c99 -Wall

当我使用本机C绑定构建gem时,会收到以下警告:

ld: warning: directory not found for option '-L/Users/travis/.sm/pkg/active/lib'
我在生成的Makefile中发现了以下几行:

CFLAGS   = $(CCDLFLAGS) -O3 -I/Users/travis/.sm/pkg/active/include -fPIC -mmacosx-version-min=10.6 -pipe -std=c99 -Wall -ggdb -O2 $(ARCH_FLAG)
..
ldflags  = -L. -L/Users/travis/.sm/pkg/active/lib -fPIC -Bstatic -fstack-protector -lpthread
我的系统用户名不是
travis
,我也没有在
extconf.rb
中指定它


还发现了这个问题:

/Users/travis
实际上来自于rvm安装的预编译ruby,大约在2.1.0版本。如果您在.rvm/rubies/或您的ruby安装目录中搜索该字符串,您将在那里找到它。我相信这个警告是无害的


如果结果证明它不是无害的,或者您只是想摆脱它,那么在本地构建ruby而不是使用预编译的二进制文件应该可以为您解决它。

除了该票证似乎表明的是“已知”之外,还有其他问题吗其中一个makefiles中的bug?@EtanReisner的问题是确定mkmf为何会这样做,并修复此行为。罚单没有指出问题的根源,因为我没有在那里使用json。“env”在运行
mkmf
的shell中说了什么?
env | grep travis
-在osx上没有什么不好的。Rails安装失败我也在OSX上。你确定这就是原因,而且没有其他错误吗?我在编译本机库时出错,抱怨/Users/travis库路径。我重新安装了命令行工具并更新和升级了brew。接下来我得到了一个关于libgmp的错误。所以我用brew重新安装了它,问题就消失了@尼尔布斯