现在开始配置c调用lua的环境。
先写一个简单的lua脚本test.lua:
print 'hello world'
再写一个c程序call_lua.c[1]:
#include <lua.h>
#include <lauxlib.h>
#include <lualib.h>
#include <stdio.h>
int main() {
lua_State *L;
L = luaL_newstate();
luaL_openlibs(L);
luaL_loadfile(L, "../lua/test.lua");
lua_pcall(L,0,0,0);
lua_close(L);
return 0;
}
接下来编译call_lua.c
gcc -o call_lua call_lua.c -I/usr/include -llua
为什么这么写呢?我来解释:
看到那些头文件了吗?lua.h,lauxlib.h,lualib.h。你们在哪啊?
敲如下命令:
locate /lua.h
这样你就得到结果:
/usr/include/lua.h
/usr/include/lua.hpp
这就是-I/usr/include的来历。
那-llua呢?
敲如下命令:[2]
locate liblua
得到如下结果:
/usr/lib64/liblua.a
/usr/lib64/liblua.so
/usr/lib64/liblua.so.5.1
/var/cache/zypper/RPMS/liblua5_1-5.1.4-6.2.x86_64.rpm
-l相当于lib,所以-llua相当于liblua
至此编译成功。运行下试试吧。
hello world
参考了:
1.
http://www.troubleshooters.com/codecorn/lua/lua_c_calls_lua.htm
2.
http://forums.opensuse.org/archives/sf-archives/archives-miscellaneous/311442-locate-command-not-working.html
分享到:
相关推荐
基于SUSE环境下Oracle11g的安装过程报告(个人学习资料)
个人手工整理的SUSE环境下WebLogic10.3.5安装手册,供大家分享
Suse Linux Enterprise 12 sp3 下离线安装gcc编译环境,本资源提供gcc环境安装所需的rpm安装包
suse安装R语言环境.rar
SUSE系统LAMP环境搭建指南
此外,SUSE Cloud 还通过与 VMware vCenter 集成,提供对 VMware 虚拟化环境的完全支持。作为 OpenStack 项目的领先贡献者和 OpenStack 基金会的白金会员,SUSE 已证明其对于推动 OpenStack 社区快速创新和稳定性的...
suse12sp3 & suse15
suse安装R语言环境安装所需要的包
SUSE
suse11下puppet的安装和环境搭建。
linux-suse11修改主机名.suse10切换到suse11用户的环境变量的问题。
suse安装(本地安装、网络安装等).txt
SUSE Linux Enterprise 12 SP5-Server-DVD-x86_64-GM-DVD1.iso SUSE Linux Enterprise 12 SP5-Server-DVD-x86_64-GM-DVD2.iso Raj Meel宣布了适用于SUSE Linux Enterprise 12的第五个服务包,这是该公司商业,企业...
suse系统下安装JDK SUSE Linux Enterprise 10 64-bit jdk-6u32-linux-x64-rpm.bin
提供sybase对于linux环境的安装和sybase数据的优化
susesuse 11 sp3下载地址,官网下载太慢了,而且经常中断。
SuSE11 SP1 内核升级指南
从SUSE Linux Enterprise Server 15开始,安装介质仅包含安装程序,这是一个基于命令行的最小系统,用于安装,更新和注册SUSE Linux Enterprise Server。在安装过程中,您可以通过选择要安装在安装程序之上的模块来...
SUSE12-SP3 镜像 以及 惠普G10服务器引导驱动镜像。 SUSE12-SP3 镜像 以及 惠普G10服务器引导驱动镜像。