Windows 上的 V8 JavaScript 引擎 (MinGW)

发布于 2024-07-10 15:51:44 字数 242 浏览 7 评论 0原文

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

The build instructions of V8 JavaScript Engine mention only Visual Studio 2005 and 2008. Has anybody been successful with MinGW on Windows XP/Vista?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

尐籹人 2024-07-17 15:51:44

你只需要稍微改变一下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 :)

You just need to change Scons a bit.
Take a look at C:\YourPythonFolder\Lib\site-packages\scons-YourSconsVersion\SCons\Script__ init__.py and go to line 560.
Change the linker to gnulink, the c compiler to mingw and the c++ compiler to g++.
Eventually it should look like this:

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

Now MingW is activated by default :)

回首观望 2024-07-17 15:51:44

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

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

I've tried, but seems it automatically detect the WIN32 platform and tries to invoke the vc++ compiler, I tried to adding to the PATH the mingw-gcc compiler (I've not vc++ installed) and the build script correctly sees it, but doesn't compile out of the box.

I suppose deleting the "WIN32 flag" will do the work, since for successfully compiling under mingw the compiler needs to thinks to be on unix enviroment, but then even if it compiles probably it will have some problems due to the different platform.

夏日落 2024-07-17 15:51:44

V8 似乎针对不同平台使用其代码的不同部分(特别是文件系统内容)。
我在 Cygwin 下进行了构建,它提供了一个漂亮的 linux 库,它可以在 linux 上运行,但不能在 Win 上运行。 我认为如果你删除 WIN32 标志,这将与 MinGW 部分相同!

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

V8 seems to use different parts of its code (especialy for the file system stuff) for different platforms.
I made a build under Cygwin which puts out a beautiful linux lib, which runs on linux but doesn't on Win. I think partwise this will be the same with MinGW if you erase the WIN32 flag!

At the moment I just can see 2 possibilities. One is simple: Use Visual Studio, it's free.
The second is very hard: write a makefile :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文