如何在使用 LuaBinary 和 LuaBridge 时解决缺少的 Lua DLL
How to resolve missing Lua DLL when using LuaBinaries and LuaBridge?
我正在尝试将Lua嵌入到C++中(并学习Lua),从Elias Daler的训练轮方法开始。我正在使用MSVC 14.0,LuaBinaries5.3.2 - Release 1(特别是这里的lua-5.3.2_Win32_dllw4_lib.zip)和LuaBridge 2.0。
我添加了以下附加包含目录:
C:\lua-5.3.2_Win32_dllw4_lib\include;C:\LuaBridge
以及以下附加依赖项:
C:\lua-5.3.2_Win32_dllw4_lib\liblua53.a
我正在使用以下来源(尽可能减少):
#include "stdafx.h"
#include <LuaBridge.h>
int main() {
luabridge::lua_State* L = luabridge::luaL_newstate();
}
该源编译和链接正常,但应用程序本身会导致标准缺少 DLL 系统错误:
程序无法启动,因为您的计算机中缺少lua53.dll。尝试重新安装该程序以解决此问题。
lua53.dll 在 C:\lua-5.3.2_Win32_dllw4_lib\ 中 — 我错过了什么?
根据官方Microsoft文档,Windows 在以下目录中搜索 DLL:
当前进程的可执行模块所在的目录。
当前目录。
窗口系统目录。
GetSystemDirectory
函数检索此目录的路径。窗口目录。
GetWindowsDirectory
函数检索此目录的路径。
PATH
环境变量中列出的目录。
因此,解决问题的一种方法是将C:lua-5.3.2_Win32_dllw4_lib
添加到当前用户的PATH
中。
与其他选项相比,这具有不需要管理员权限的优点,并且不需要lua53.dll
位于当前目录或可执行文件所在的目录中。
相关文章:
- Dll在同一解决方案中从 c# 项目导入到 c++ 项目
- 在Embarcadero C++ Builder中生成的DLL未解决的外部链接错误
- 系统错误:程序无法启动,因为您的计算机中缺少MSVCP140D.DLL。尝试重新安装该程序以解决此问题
- 使用来自 Excel VBA 的 C++ dll 时"Bad DLL calling convention" - 如何解决?
- C++ DLL 运行时错误"abc.dll is not a valid WIN32 application" 。请帮助解决这个问题
- 如何解决导入dll过程中Viual Studio中的并排配置错误
- 如何解决python35的问题.dll'没有找到?
- C++ VS:多 DLL 解决方案中的'new'和'delete'覆盖
- 未解决的外部符号,带有ftd3xx.dll
- 在C 中的DLL中解决模板的问题
- MSVS 2015构建DLL-在MSVCRTD.LIB(EXE_MAIN.OBJ)中的Indoke_main中未解决的外
- 通过COM从C 解决方案进行调试C#DLL
- 将 DLL 链接到 LIB 的未解决的外部符号错误
- 如何在使用 LuaBinary 和 LuaBridge 时解决缺少的 Lua DLL
- 我如何在我的C DLL中修复未解决的外部符号错误
- 代理DLL中未解决的外部符号
- 奇异的未解决的外部编译DLL
- 在DLL中使用的最简单的C++PUSH通知/POST解决方案
- 如何解决"原生DLL libmbusmaster.dll的问题不见了!请将 DLL 文件部署到与 mbusmaster.net.dll 相同的目录中。
- C# COM-Interop dll for C++ COM dll 在 2 个解决方案之间不起作用