Pregunta

Las instrucciones de compilación de V8 JavaScript Engine solo mencionan Visual Studio 2005 y 2008. ¿Alguien ha tenido éxito con MinGW en Windows XP / Vista?

¿Fue útil?

Solución

Solo necesita cambiar un poco las Scons.
Eche un vistazo a C: \ YourPythonFolder \ Lib \ site-packages \ scons-YourSconsVersion \ SCons \ Script__ init__.py y vaya a la línea 560.
Cambie el enlazador a gnulink, el compilador de c a mingw y el compilador de c ++ a g ++.
Eventualmente debería verse así:

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

Ahora MingW está activado por defecto :)

Otros consejos

Lo he intentado, pero parece que detecta automáticamente la plataforma WIN32 e intenta invocar el compilador vc ++, traté de agregar a la RUTA el compilador mingw-gcc (no he instalado vc ++) y el script de compilación ve correctamente pero no se compila fuera de la caja.

Supongo que eliminar el " indicador WIN32 " hará el trabajo, ya que para compilar con éxito en mingw, el compilador debe pensar que está en un entorno de Unix, pero incluso si se compila probablemente tendrá algunos problemas debido a la plataforma diferente.

V8 parece usar diferentes partes de su código (especialmente para las cosas del sistema de archivos) para diferentes plataformas. Hice una compilación bajo Cygwin que saca una hermosa lib de Linux, que se ejecuta en Linux pero no en Win. ¡Creo que, en parte, esto será lo mismo con MinGW si borras la bandera WIN32!

Por el momento solo puedo ver 2 posibilidades. Uno es simple: use Visual Studio, es gratis. El segundo es muy difícil: escribir un archivo MAKE :)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top