警告被视为rails中的错误

时间:2015-04-27 16:51:46

标签: ruby-on-rails ruby gcc makefile gcc-warning

当我尝试制作"捆绑安装"时出现以下错误在我的rails项目中

   C:/Ruby22/bin/ruby.exe -r ./siteconf20150427-5772-lng4pk.rb extconf.rb
creating Makefile

make "DESTDIR=" clean

make "DESTDIR="
generating byebug-i386-mingw32.def
compiling breakpoint.c
cc1.exe: warnings being treated as errors
In file included from c:/Ruby22/include/ruby-2.2.0/ruby/defines.h:163:0,
                 from c:/Ruby22/include/ruby-2.2.0/ruby/ruby.h:29,
                 from c:/Ruby22/include/ruby-2.2.0/ruby.h:33,
                 from ./byebug.h:4,
                 from breakpoint.c:1:
c:/Ruby22/include/ruby-2.2.0/ruby/win32.h:319:44: error: 'struct timespec' declared inside parameter list
c:/Ruby22/include/ruby-2.2.0/ruby/win32.h:319:44: error: its scope is only this definition or declaration, which is probably not what you want
c:/Ruby22/include/ruby-2.2.0/ruby/win32.h:320:43: error: 'struct timespec' declared inside parameter list
make: *** [breakpoint.o] Error 1

make failed, exit code 2

我在Windows 7上经过大量研究后发现,我必须取消将警告视为错误的选项。任何人都知道我可以在哪里取消设置这样的选项(在makefile中是不可能的,因为makefile是生成的文件)

1 个答案:

答案 0 :(得分:3)

这可能不是您想听到的。但是当我从Windows开发RoR应用程序时,我遇到了很多错误。我还有很多与rails无关的其他问题,更多的是与Ruby如何与Windows操作系统交互。 Ruby本质上是非常“Linuxy”。因此,我建议在使用Ruby和Rails进行开发时使用运行linux ubuntu的虚拟机。

有一个很棒的Linux虚拟机叫做“Vagrant”。使用Ruby非常棒。他们有关于如何启动和运行Ruby的文档:

https://www.vagrantup.com/

我希望这会有所帮助。我知道切换到Vagrant虚拟机帮助我解决了许多与编写实际代码无关的无用问题。