使用Visual Studio 14进行静态链接Lua

我正在尝试使用Visual Studio 14将最新的Lua库与我的x86应用程序链接起来。我在附加依赖项下添加了库,并包含了适当的头文件(lua.hpp,我也尝试了手动的extern"C"方法)。我将我的模块编译为x86二进制文件,并使用正确的Lua二进制文件(x86)。我得到的错误是:

LNK2019 unresolved external symbol "struct lua_State * __cdecl luaL_newstate(void)" (?luaL_newstate@@YAPAUlua_State@@XZ) referenced in function _DllMain@12

显然,头文件已经声明了luaL_newstate函数,但是查看提供的二进制文件(lua53.lib)的符号,很明显它实际上并没有提供任何叫做luaL_newstate的符号,而是有一个名为_luaL_newstate的符号。

我做错了什么?

点赞
用户5479994
用户5479994

我找到了解决方法,我把 C 语言的头文件(lua.hlauxlib.h等)放在了其他地方。把它们移除后,问题就解决了。

2015-11-26 17:49:48