使用 Visual Studio 静态链接 Lua 14
Statically linking Lua using Visual Studio 14
我正在尝试 link 最新的 Lua 库与我的 x86 应用程序使用 Visual Studio 14. 我在附加依赖项下添加了库,并包含了适当的头文件 ( 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
.
我做错了什么?
我想通了,我在别处包含了 C 头文件(lua.h
、lauxlib.h
等)。删除那些解决了我的问题。
我正在尝试 link 最新的 Lua 库与我的 x86 应用程序使用 Visual Studio 14. 我在附加依赖项下添加了库,并包含了适当的头文件 ( 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
.
我做错了什么?
我想通了,我在别处包含了 C 头文件(lua.h
、lauxlib.h
等)。删除那些解决了我的问题。