error loading module ‘cjson‘ from file ‘.\cjson.dll‘:找不到指定的程序。

编译lua-cjson

项目:https://github.com/openresty/lua-cjson

克隆下来后使用vs2022创建工程

添加三个文件即可

cpp 复制代码
fpconv.c
lua_cjson.c
strbuf.c

配置项目工程 lua头文件目录 链接器lua库文件目录

配置lua头文件 luaxxx/src

配置lua库文件 luaxxx.lib

编译dll即可使用。

lua-cjson编译成功,使用时找不到指定程序。

上述原因是因为没有导出C函数:luaopen_cjson

在项目工程(非解决方案)下面新建文件 cjson.def

添加内容

cpp 复制代码
LIBRARY "cjson"

EXPORTS

luaopen_cjson

然后配置工程

工程属性-链接器-输入-模块定义文件 cjson.def

重新编译DLL即可。

温馨提示:

如果提示不是有效的Win32程序,那是因为编译lua-cjson时用的lua版本(luaxxx.dll)和运行时lua(luaxxx.dll)不匹配导致的。

Enjoy!!!

相关推荐
毕设源码-邱学长6 小时前
【开题答辩全过程】以 基于Java的学校住宿管理系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
rookieﻬ°7 小时前
PHP框架漏洞
开发语言·php
炸膛坦客7 小时前
单片机/C/C++八股:(二十)指针常量和常量指针
c语言·开发语言·c++
兑生8 小时前
【灵神题单·贪心】1481. 不同整数的最少数目 | 频率排序贪心 | Java
java·开发语言
炸膛坦客9 小时前
单片机/C/C++八股:(十九)栈和堆的区别?
c语言·开发语言·c++
零雲9 小时前
java面试:了解抽象类与接口么?讲一讲它们的区别
java·开发语言·面试
Jay_Franklin9 小时前
Quarto与Python集成使用
开发语言·python·markdown
2401_8318249610 小时前
代码性能剖析工具
开发语言·c++·算法
是wzoi的一名用户啊~10 小时前
【C++小游戏】2048
开发语言·c++
Sunshine for you10 小时前
C++中的职责链模式实战
开发语言·c++·算法