【发布时间】:2016-02-29 21:03:22
【问题描述】:
我正在尝试使用 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) 符号,很明显它实际上并没有提供任何这样命名的符号——而是有一个名为 @ 987654326@.
我在这里做错了什么?
【问题讨论】:
-
那个是用 C++ 编译器编译的,注意修饰的名字。您在某处缺少外部“C”。
-
是的,就是这样,我忘记了一些包含
标签: visual-c++ visual-studio-2015 lua linker static-linking