¿Cómo usar LuaJIT igual que Lua en un programa C ++?


9

Estoy usando Lua en mi programa C ++ , como una biblioteca. Pero leí que LuaJIT es una mejor implementación.

¿Es posible reemplazar con LuaJIT con pocos cambios? ¿Cómo?


44
Simplemente reemplace los archivos fuente si está compilando desde la fuente, o la DLL si está usando el precompilado. LuaJIT está destinado a ser un reemplazo directo para el stock lua, por lo que debería funcionar simplemente reemplazándolo.
Panda Pyjama

44
@PandaPajama que probablemente debería ser una respuesta, no un comentario
cenizas999

No es tan simple en Mac OS X
2013

Aquí hay una discusión relevante por correo electrónico sobre los pros / contras de varias implementaciones de Lua.
Anko

Respuestas:


5

Simplemente reemplace los archivos fuente si está compilando desde la fuente, o la DLL si está usando el precompilado (preferido).

Por la guía de instalación :

LuaJIT es compatible con API con Lua 5.1. Si ya ha incrustado Lua en su aplicación, probablemente no necesite hacer nada para cambiar a LuaJIT, excepto el enlace con una biblioteca diferente:

LuaJIT está destinado a ser un reemplazo directo para el stock lua, por lo que debería funcionar simplemente reemplazándolo


2

Como sugiere el comentario de Panda Pyjama . Es fácil un reemplazo directo.

  • Cambie la ruta de inclusión para obtener el archivo LuaJIT lua.hpp
  • Código de degradación de Lua 5.2 API a Lua 5.1 API.
  • Vinculado con la biblioteca LuaJIT en lugar de la biblioteca lua

La peor parte fue la degradación a 5.1, especialmente la carga de módulos de funciones propias en el estado lua.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.