我正在尝试使用lua设置c ++控制台应用程序。无论出于何种原因,我无法建立它。我认为这是.lib文件的一些问题。
我得到的错误是:
1>------ Build started: Project: testLua, Configuration: Debug Win32 ------
1> testLua.cpp
1>testLua.obj : error LNK2019: unresolved external symbol _luaL_newstate referenced in function _wmain
1>C:\Users\BMillek\Desktop\TestLua\testLua\Debug\testLua.exe : fatal error LNK1120: 1 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
以下是我的主要内容:
extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
}
lua_State* L;
int _tmain(int argc, _TCHAR* argv[])
{
L = lua_open();
while(true)
;
return 0;
}
我自己没有编译lua。我从SourceForge获得了lua5_1_4_Win64_vc10_lib.zip。 我正在运行Windows 7,64位。
对于链接器 - >输入我有 lua5.1.lib
对于VC ++ Directores->包括我拥有的目录 C:\ Program Files \ lua5.1 \ include
对于VC ++参考目录,我有图书馆目录 C:\ Program Files \ lua5.1
尝试将.lib更改为无效的文件名会给我一个错误,因此我认为它正在看到它。
我认为必须有一些我缺少的东西,但我不知道是什么。有什么想法吗?
答案 0 :(得分:1)
将Lua用作DLL时,必须定义LUA_BUILD_AS_DLL
。这在配置属性 - > C / C ++ - >预处理器 - >预处理器定义中完成。