我想用VC++调用LUA的变量或函数,
您好。我想用VC调用LUA,可一开始OPEN()就出错,
能给我发过来么,谢谢您。
#include "lua.h"
#include "lauxlib.h"
#include "lualib.h"
#pragma comment(lib, "lua.lib")
还有,
#pragma comment(lib, "liblua_d.lib")
#pragma comment(lib, "liblualib.lib")
#pragma comment(lib, "liblualib_d.lib")是哪来的,我没有哪,能帮一下么,谢谢
您好。我想用VC调用LUA,可一开始OPEN()就出错,
能给我发过来么,谢谢您。
#include "lua.h"
#include "lauxlib.h"
#include "lualib.h"
#pragma comment(lib, "lua.lib")
还有,
#pragma comment(lib, "liblua_d.lib")
#pragma comment(lib, "liblualib.lib")
#pragma comment(lib, "liblualib_d.lib")是哪来的,我没有哪,能帮一下么,谢谢
编译为静态库很简单,有人已经写过,现摘录如下:
Lua 包含core lib和standard lib,详细情况可以查阅文档,为了简单起见,我们将其放到一个lib中,我们需要建立一个静态库的工程,然后将其源文件加入到工程中,包含以下文件
core lib: lapi.c lcode.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c lmem.c lobject.c lopcodes.c lp***r.c lstate.c lstring.c ltable.c ltests.c ltm.c lundump.c lvm.c lzio.c
standard lib: lauxlib.c lbaselib.c ldblib.c liolib.c lmathlib.c ltablib.c
lstrlib.c loadlib.c
并将其输出路径设置到lib下
二、Lua动态库
编译动态库,首先需要修改一下Lua.h头文件。如下:
/* for all API functions */
//#ifndef LUA_API
//#define LUA_API extern
//#endif
#ifdef LUA502_EXPORTS // 根据自己的项目而定
#define LUA_API __declspec(dllexport)
#else
#define LUA_API __declspec(dllimport)
#endif
然后用vc建立一个win32 dll,包含*.h和*.c文件(参考一),编译即可。