Ruby 问一个 Windows 下 Ruby 版本号的问题

588588 · March 18, 2013 · Last by luikore replied at March 18, 2013 · 2357 hits

我用直接用 installer 在 windows 下安装的,然后发现不同的版本号,如 x64-mswin64_80 x64-mswin64_90 想问下,80 是代表 VS2005 编译出来的吗?90 是 VS2008?? 此外,我发现 2.0.0 版本的 binary 是 x64-mswin64_mingw32,是否意味着这个 Windows 版本是通过 MinGW 在 Linux 下交叉编译得来的?

80 表示链接到 msvcrt80.dll, 90 链接到 msvcrt90.dll

mingw32 的是 mingw 编译的,是不是交叉就不一定了

#1 楼 @luikore 为什么我在官网已经搜不到 90 的版本了呢?我现在用 80 的 ruby.exe 直接 coredump 掉。

#1 楼 @luikore 是我没找对地方?还是其他原因,在 google 好像也很难搜到。

#3 楼 @588588 VC 各种对 C99 支持不标准,问题很多,所以 rubyinstaller 已经完全转向 mingw 了

#4 楼 @luikore 这么冷的知识,你是怎么知道的啊?

#5 楼 @lgn21st https://github.com/luislavena 说的... 好象是 ruby-forum 上?后来 vc 编译的就很少有人测试了 (以前 yugui 当 release manager 的时候,还会用主流的 visual studio 编译发布二进制的...). 我自己链接到 msvcrt100.dll 的编译出来比 mingw 快很多,因为 mingw 是链接到很古老的 vc runtime 上的...

#7 楼 @588588 好象是,然后有很多 gem 也用 rake compiler 编译 windows 的二进制版本,导致和 vc build 出来的 ruby 不相容 (从源码 gem install 往往是可以的)

You need to Sign in before reply, if you don't have an account, please Sign up first.