用debug模式编译时通过,而用release方式时接口函数无法识别

test.obj : error LNK2001: unresolved external symbol _lua_close
test.obj : error LNK2001: unresolved external symbol _luaopen_base

test.obj : error LNK2001: unresolved external symbol _lua_open

 

 

打开vs 
tools->options->projects->vc++ directories (工具->选项->目录) 
executable files (可执行文件)选项添加lua安装以后的路径,我的是 E:\work\lua\Lua5.1 
include files选项添加lua include路径,我的是 E:\work\lua\Lua5.1\include  
library files 选项添加lua lib路径,我的是 E:\work\lua\Lua5.1\lib  
 
目录设置好后还要加载LUA的库,2种方法: 
 
方法1:工程->设置->连接 
在 对象/库模块 一栏中添加进:lua5.1.lib lua51.lib 

方法2: 
直接在你的工程里合适的位置上加入代码 
 
#pragma comment(lib,"lua5.1.lib") 
#pragma comment(lib,"lua51.lib") 
即可 
 
最后就是开始使用LUA的时候要使用如下代码: 
 
extern "C" { 
#include "lua.h" 
#include "lualib.h" 
#include "lauxlib.h" 

 
导入基本的头文件 
 
另外就是5.1以后的版本要使用如下代码进行LUA的初始化: 
 
lua_State *L = lua_open();  //打开一个LUA解析器 
luaL_openlibs(L); //打开所需的库 
 
//lua_close(L); //关闭LUA解析器 
 

相关文章:

  • 2022-12-23
  • 2021-08-14
  • 2022-12-23
  • 2022-01-18
  • 2021-10-28
  • 2021-07-19
  • 2022-12-23
  • 2022-02-02
猜你喜欢
  • 2021-06-01
  • 2022-12-23
  • 2021-11-06
  • 2022-12-23
  • 2021-08-29
相关资源
相似解决方案