现在开始配置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
分享到:
相关推荐
4.1.3.noarch.rpm 和 glibc-devel-2.22-8.4.x86_64.rpm:这两个包提供了Linux系统运行时库的开发头文件和库,主要是glibc(GNU C Library),它是大多数Linux应用程序的基础,包含了许多系统调用接口和C语言库函数。...
基于SUSE环境下Oracle11g的安装过程报告(个人学习资料)
在Linux系统中,尤其是SUSE Linux环境下安装R语言环境是一个常见的任务,对于数据科学家和统计分析人员来说至关重要。R语言是一种强大的开源统计分析和图形化编程语言,广泛应用于数据分析、机器学习等领域。以下是...
### SUSE环境下WebLogic10.3.5安装手册知识点详解 #### 一、WebLogic 10.3.5安装概述 ##### 1.1 安装环境介绍 - **操作系统**: SUSE Linux,一种广泛使用的开源企业级Linux发行版。 - **WebLogic版本**: Oracle ...
在SUSE系统上进行软件开发时,`GCC`(GNU Compiler Collection)是必不可少的工具,因为它包含了编译C、C++以及其他编程语言所需的编译器。本文将详细介绍如何使用`rpm`命令在SUSE系统中安装`GCC`的开发环境。 `RPM...
在SUSE Linux操作系统中安装R语言环境是一项关键的任务,尤其对于数据分析、统计计算以及机器学习等领域的工作至关重要。这里我们详细探讨如何使用提供的压缩包文件来完成这个过程。 首先,R语言是一个开源的统计...
"suse系统下安装JDK" SUSE Linux Enterprise 10 64-bit系统中安装JDK(Java Development Kit)的详细步骤。 一、卸载自带的JDK 在安装JDK之前,需要检查是否已经安装了自带的JDK 1.4。可以使用命令`#rpm -qa | ...
suse12sp3 & suse15
这本书不仅提供了SUSE Linux系统的基础知识,还深入讲解了其在企业环境中的应用与管理,为读者提供了一个从入门到精通的学习路径。 ### SUSE Linux简介 SUSE Linux是由SUSE公司开发的Linux发行版之一,以其稳定性...
SUSE Cloud 2的设计目标是构建一个能够为任何平台和云环境提供工作负载构建、管理和供应的环境,这对于混合云和多云策略的实施至关重要。 第二个战略重点是企业计算。SUSE Linux Enterprise是这一战略的核心产品,...
在SUSE 11中,用户环境变量的设置也可能会影响到系统的行为,特别是当从SUSE 10升级到SUSE 11时,可能需要调整这些变量以适应新版本的系统。 首先,我们来详细讨论如何在SUSE 11中修改主机名: 1. **修改hostname...
SUSE
手册将涵盖开发环境的搭建,如GCC编译器、Git版本控制、IDE集成等,并简单介绍如何在Linux下进行C、Python或Java等编程。 10. **虚拟化技术**: SUSE Linux 13支持KVM和Xen等虚拟化平台。手册会解释如何创建和管理...
总的来说,SUSE Linux Enterprise 12和15提供了强大而稳定的Linux平台,适用于企业级别的计算需求,无论是传统的数据中心还是现代的云计算环境。通过合理的配置和管理,用户可以充分利用其特性,实现高效、安全的IT...
### SUSE系统LAMP环境搭建指南 #### 一、配置系统账户及时间 在搭建LAMP环境之前,首先需要确保服务器的时间是准确的,并且创建一个用于管理Web服务的专用账户。以下是具体的步骤: 1. **设置当前时间**:通过`...
在Linux世界中,SUSE Linux Enterprise(简称SLES)是一个广泛使用的商业级操作系统,而GCC(GNU Compiler Collection)是开源的、跨平台的编译器集合,用于将源代码编译为可执行程序。在没有网络连接的情况下,离线...
SUSE Linux Enterprise Server(SLES)11 SP4 是一个稳定、安全且功能丰富的服务器操作系统,尤其适用于企业级环境。它基于x86_64架构,支持64位计算,提供高效的性能。在SLES 11 SP4上安装GCC(GNU Compiler ...
在本文中,我们将深入探讨如何在SUSE 10操作系统中进行FTP和Telnet的安装与配置,以及解决一些常见的问题。首先,让我们先了解如何启用和安装Telnet服务。 在SUSE 10中,Telnet服务默认是未安装的。你可以通过执行`...
以上内容涵盖了SUSE Linux的基本使用、管理和配置,通过本教程的学习,读者将具备在实际环境中操作和管理SUSE Linux的能力。两个PDF文件分别可以作为理论学习和实践操作的参考,确保学习效果。无论是对于个人兴趣...