【问题标题】:unresolved external symbol _LoadLibraryExA when compiling Lua编译 Lua 时未解析的外部符号 _LoadLibraryExA
【发布时间】:2015-09-21 08:27:08
【问题描述】:

我正在尝试为 MSVC14 编译 Lua 5.3.1。但我得到了错误:

函数 _lsys_load 中引用的 LNK2019 未解析的外部符号 _LoadLibraryExA

有问题的功能是:

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 成功编译过它。我能做些什么来解决它?

【问题讨论】:

    标签: c visual-c++ lua compiler-errors


    【解决方案1】:

    我遇到了同样的问题。我猜你用vs2015编译lua静态库的时候,和我一样,创建了一个windows通用静态库项目(Add New Project-> Visual C++ -> Windows->Static Library)。

    删除您当前的项目并创建一个win32项目将解决问题。 添加新项目-> Visual C++ -> Win32,然后在向导对话框中选择“静态库”。

    【讨论】:

      【解决方案2】:

      确保您将Kernel32.lib 与您的程序相关联。 LoadLibraryExAKernel32.lib 中定义。

      检查您的项目或构建设置,并确保 Kernel32.lib 应该存在。

      【讨论】:

      • 这不应该发生。然后确保链接正确的 Kernel32.lib 并且应该包含所需的功能。
      猜你喜欢
      • 2021-11-13
      • 1970-01-01
      • 2013-02-17
      • 1970-01-01
      • 1970-01-01
      • 2020-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多