我正在尝试使用clang在Windows上构建Ruby。它使用Microsoft编译器构建得很好,但是当我替换clang时,configure阶段失败并出现以下错误:
C:\ruby-2.2.2\win32\build40>..\configure.bat
conftest.c(2,2) : error:
#error
^
1 error generated.
clang-cl.exe: warning: Creating verconf.mk: 'linker' input unused
clang-cl.exe: warning: argument unused during compilation: '-I ../..'
clang-cl.exe: warning: argument unused during compilation: '-I ../../include'
NMAKE : fatal error U1077: 'cl' : return code '0x1'
Stop.
下一步是查看conftest.c以尝试查看正在发生的事情,但是在整个硬盘上搜索时找不到该名称的文件,并且在配置期间发出的所有命令的日志都没有删除很轻。这是怎么回事,我如何获得conftest.c的副本?
http://blade.nagaokaut.ac.jp/cgi-bin/vframe.rb/ruby/ruby-talk/433633?433552-433636
进一步讨论答案 0 :(得分:1)
好吧,如果我不得不猜测,conftest.c
是nmake
为测试环境而创建的临时文件,问题是nmake
找不到cl
尝试运行该测试时(应该由clang-cl
替换)。
检查Ruby配置脚本的内部。我打赌你会发现导致nmake
寻找cl
而不是clang-cl
的内容。但我不确定。
我知道在使用clang
工具链中的mingw64
构建Ruby时,我在使任何链接器正常工作时遇到了大量麻烦。这真是太好了。