admin 管理员组

文章数量: 887021


2023年12月22日发(作者:c语言设计学生成绩管理系统)

VS下LUA编程环境搭建

说明:文档内容来源于网络,仅供学习之用!

vs下lua编程环境搭建 2009-12-11 11:36:50| 分类: lua | 标签: |字号大中小 订阅 .

以vs2003[en]为例

安装完LuaForWindows_v5.1.4

/frs/?group_id=377

打开vs

tools->options->projects->vc++ directories

executable files 选项添加lua安装以后的路径,我的是 E:workluaLua5.1

include files选项添加lua include路径,我的是 E:workluaLua5.1include

library files 选项添加lua lib路径,我的是 E:workluaLua5.1lib

[如果怕出问题,可以把这些新加的选项都提到最前面]

ok

其他一些问题及解决办法

1.编译报错一

oid __cdecl lua_close(struct lua_State *)" (?lua_close@@YAXPAUlua_State@@@Z) referenced in

function _main

unresolved external symbol "void __cdecl lua_settop(struct lua_State *,int)"

(?lua_settop@@YAXPAUlua_State@@H@Z) referenced in function _main

......

原因

代码中的包含头部分

#include

#include

#include

用在了c++语法中

解决方法

添加扩展c调用申明

extern "C" {

#include

#include

#include

}

2.编译报错二

unresolved external symbol _lua_close referenced in function _main

unresolved external symbol _lua_settop referenced in function _main

......

原因

lua静态库没有链接

解决方法

Project->Code text properties->configuration properties->linker->input

Additional Dependencies 选项加入

3.编译成功后命令行提示unprotected error in call to lua api

原因及解决方法

lua5.0以前初始化的都会用到如下函数

lua_State *L = lua_open();

luaopen_base(L);

luaopen_table(L);

luaopen_io(L);

luaopen_string(L);

luaopen_math(L);

5.1以后改为

lua_State *L = lua_open();

luaL_openlibs(L)

即可


本文标签: 添加 选项 编译 包含 字号