我正在尝试为MSVC14编译Lua 5.3.1。但是我得到了错误:
LNK2019未解析的外部符号_LoadLibraryExA在函数_lsys_load中引用
有问题的功能是:
static void *lsys_load (lua_State *L, const char *path, int seeglb) {
HMODULE lib = LoadLibraryExA(path, NULL, LUA_LLE_FLAGS);
(void)(seeglb); /* not used: symbols are 'global' by default */
if (lib == NULL) pusherror(L);
return lib;
}
我不太确定是什么导致了这个错误,因为我之前用MinGW成功编译了它。我该怎么做才能解决它?
答案 0 :(得分:1)
我遇到了同样的问题。我猜你用vs2015编译lua静态库时,你创建了一个windows公共静态库项目(Add New Project-> Visual C ++ - > Windows->静态库),就像我一样。
删除当前项目并创建一个win32项目将解决问题。 添加新项目 - > Visual C ++ - > Win32,然后选择"静态库"在向导对话框中。
答案 1 :(得分:0)
确保您将Kernel32.lib
与您的计划相关联。 LoadLibraryExA
中定义了Kernel32.lib
。
检查您的项目或构建设置,并确保Kernel32.lib
应该存在。