【发布时间】:2022-08-06 00:57:10
【问题描述】:
我正在使用 Luarocks(使用 Visual Studio 2022 中的编译器)安装 lpeg 模块。它似乎运行良好,除非我需要生成的 lpeg.dll 我得到:
发生错误 - 插件无法完成 从文件 \'C:\\Program Files (x86)\\XXXX\\Lua\\lpeg.dll\' 加载模块 \'lpeg\' 时出错: %1 不是有效的 Win32 应用程序。
这表明它已作为 64 位 dll 链接,而它运行的环境必须是 32 位。
我可以找到有关如何通过更改项目设置来配置 VS 以生成 32 位 dll 的各种说明,但没有关于如何使 Luarocks 执行相同操作的说明。 MinGW 不是一个选项
如何强制 Luarocks 和 Visual Studio 2022 创建 32 位 dll?
注意:我已阅读此 documentation 并希望开始
x64_x86 Cross Tools Command Prompt - 将环境设置为使用 64 位 x64 原生工具来构建 32 位 x86 原生代码。
然后运行
luarocks install lpeg将实现我想要的,但它没有。我还尝试了“开发人员命令提示符”和 x64-x86 交叉工具命令提示符,但均未成功。
标签: visual-studio lua luarocks