Usar Lua em C++
extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
}
Até agora só estou a tentar fazer o seguinte pequeno trecho:
lua_State* L;
L = luaL_newstate();
luaL_openlibs(L);
luaL_dofile(L, "test.lua");
lua_close(L);
No entanto, tenho sempre um erro na primeira linha. O erro que estou recebendo no momento afirma que a referência é indefinida para "luaL_newstate".
Talvez eu devesse colocar alguns ficheiros no directório lib. da fonte? Ou há alguma coisa que eu tenha que adicionar Ao 'outras opções de linker' no menu 'Opções de compilação do projeto'?
Editar:
Entretanto, encontrei esta pergunta.: Lua 5.3 referências indefinidasparece que eu tenho que colocar a-llua para as 'opther linker opções', mas não há.mais ou menos.ficheiros lib incluídos nos pacotes em lua.org.
1 answers
Em vez de baixar a fonte do site da Lua, eu baixei o o mais recente Luadista . O site também é acessível através da Lua.org s download página sob a categoria binários.
Nesse zíper, há as habituais pastas de inclusão e lib.
Copiei ambos para as pastas apropriadas, e configurei o caminho para compilador e linker no menu de Opções de Compilação.
Depois, por baixo da página de configuração do Linker, adicionei a liblua.dll.a ficheiro, que pode ser encontrado no directório lib. Para este último passo, poderá encontrar ajuda adicional na página de configuração do SFML .
Para o passo final, coloquei a liblua.dll ficheiro ao lado do executável compilado.