2

V8 JavaScript Engine的构建说明仅提及 Visual Studio 2005 和 2008。有没有人在 Windows XP/Vista 上使用MinGW成功?

4

4 回答 4

1

有一个支持 MinGW 的补丁:http: //codereview.chromium.org/18309

另请参阅: http ://code.google.com/p/v8/issues/detail?id=64

于 2009-04-08T20:46:49.630 回答
1

你只需要稍微改变一下 Scons。
查看 C:\YourPythonFolder\Lib\site-packages\scons-YourSconsVersion\SCons\Script__ init__.py 并转到第 560 行
。将链接器更改为 gnulink,将 c 编译器更改为 mingw,将 c++ 编译器更改为 g++。
最终它应该是这样的:

linkers = ['gnulink', 'mslink',  'ilink', 'linkloc', 'ilink32' ]
c_compilers = ['mingw', 'msvc',  'gcc', 'intelc', 'icl', 'icc', 'cc', 'bcc32' ]
cxx_compilers = ['g++', 'msvc', 'intelc', 'icc',  'c++', 'bcc32' ]

现在默认情况下会激活 MingW :)

于 2009-07-19T06:12:06.203 回答
0

我已经尝试过,但似乎它会自动检测 WIN32 平台并尝试调用 vc++ 编译器,我尝试将 mingw-gcc 编译器(我没有安装 vc++)添加到 PATH 并且构建脚本正确地看到它,但是不能开箱即用。

我想删除“WIN32 标志”就可以了,因为要在 mingw 下成功编译,编译器需要认为是在 unix 环境中,但是即使它编译也可能由于平台不同而出现一些问题。

于 2009-03-13T07:15:17.903 回答
0

V8 似乎将其代码的不同部分(尤其是文件系统的东西)用于不同的平台。我在 Cygwin 下构建了一个漂亮的 linux 库,它可以在 linux 上运行,但不能在 Win 上运行。如果您删除 WIN32 标志,我认为部分情况下这与 MinGW 相同!

目前我只能看到两种可能性。一个很简单:使用 Visual Studio,它是免费的。第二个非常难:写一个makefile :)

于 2009-04-01T08:04:45.333 回答