Linux C++ 使用LuaBind嵌入lua脚本

1.下载luabind

地址http://sourceforge.jp/projects/sfnet_luabind/

luabind.0.9.tar.gz

解压到luabind

eclipse新建LuaBind工程,属性静态库

将所有的src目录和luabind目录全部复制进来。

添加包含路径

包括lua安装路径,lua目录下的include,luabind目录,boost目录;还要加上boost的lib目录

2.安装lua开发包

yum install lua_devel

3.编译成libLuaBind.a

4.C++调用lua

C++项目要包换lua 和LuaBind这两个库

--------test.lua-----------

print(I am lua)

--------main.cpp--------引入liblua.so libLuaBind.a及其路径

extern "C"{

  #include "lua.h"

  #include "lualib.h"

  #include "lauxlib.h"

}

#include <iostream>

#include <luabind/luabind.hpp>

using namespace std;

int main(){

  lua_State* L = luaL_newstate();

  luaL_openlibs( L );

  int ret = luaL_loadfile( L,"test2.lua" );

  if( ret == 0){

    printf("\nload error");

  }

  ret = lua_pcall(L,0,LUA_MULTRET,0);

  if( ret == 0){

    printf("\ncall error");

  }

  lua_close(L);

  return 0;

}