Comment utiliser LuaJIT de la même manière que Lua dans un programme C ++?

9

J'utilise Lua dans mon programme C ++ , comme bibliothèque. Mais j'ai lu que LuaJIT est une meilleure implémentation.

Est-il possible de remplacer LuaJIT avec peu de changement? Comment?

Zhen
la source
4
Remplacez simplement les fichiers source si vous compilez à partir de la source, ou la DLL si vous utilisez le fichier précompilé. LuaJIT est censé être un remplacement direct pour la lua de stock, il devrait donc fonctionner simplement en le remplaçant.
Panda Pyjama
4
@PandaPajama qui devrait probablement être une réponse, pas un commentaire
ashes999
Ce n'est pas si simple sur Mac OS X
fin
Voici une discussion par e-mail pertinente sur les avantages / inconvénients des différentes implémentations de Lua.
Anko

Réponses:

5

Remplacez simplement les fichiers source si vous compilez à partir de la source, ou la DLL si vous utilisez le fichier précompilé (préféré).

Selon le guide d'installation :

LuaJIT est compatible API avec Lua 5.1. Si vous avez déjà intégré Lua dans votre application, vous n'avez probablement rien à faire pour basculer vers LuaJIT, à l'exception d'un lien avec une autre bibliothèque:

LuaJIT est censé être un remplacement sans rendez-vous pour le stock lua, il devrait donc fonctionner simplement en le remplaçant

Pyjama Panda
la source
2

Comme le suggère le commentaire de Panda Pyjama . C'est facile un remplacement sans rendez-vous.

  • Modifier le chemin d'inclusion pour obtenir le fichier LuaJIT lua.hpp
  • Rétrograder le code de l'API Lua 5.2 vers l'API Lua 5.1.
  • Lié à la bibliothèque LuaJIT au lieu de la bibliothèque lua

Le pire a été la rétrogradation vers la version 5.1, en particulier la charge de ses propres modules fonctionnels dans l'État de Lua.

Zhen
la source