在BCB中使用Lua

开发 前端
由于想要在一个原生应用里提供脚本功能,而Python的发布不能不说是一件麻烦事。因为所需要的脚本功能很简单,所以决定试试传说中的Lua。

由于想要在一个原生应用里提供脚本功能,而Python的发布不能不说是一件麻烦事。因为所需要的脚本功能很简单,所以决定试试传说中的Lua。

第一步,下载源码。虽然Lua有提供二进制版本下载,但是因为我是用Turbo C++ Explorer(即C++Builder的免费版),所以我决定还是自己编译一下源码。下载位置当然是Lua的官方网站:http://www.lua.org。

第二步,编译安装。源码里只提供了GCC用的MAKE文件和VC用的一个BAT文件,BCB则需要自己动手了。开始不知道什么地方搞错,总是编译不对——虽然编译成功,但是执行出错。折腾了一阵子才总算大功告成,相应的编译参数如下:

  1. bcc32 -DNDEBUG -DNO_STRICT;_NO_VCL -Hc -tWD -w-par -O2 -b- -k- -vi 
  2.  
  3. -tWM -tW- -c -DLUA_BUILD_AS_DLL -P- l*.c   del lua.obj   del luac.obj   ilink32 -Tpd -Gn -j -x -Gi c0d32.obj lapi.obj lauxlib.obj 
  4.  
  5. lbaselib.obj lcode.obj ldblib.obj ldebug.obj ldo.obj ldump.obj 
  6.  
  7. lfunc.obj lgc.obj linit.obj liolib.obj llex.obj lmathlib.obj lmem.obj 
  8.  
  9. loadlib.obj lobject.obj lopcodes.obj loslib.obj lparser.obj lstate.obj 
  10.  
  11. lstring.obj lstrlib.obj ltable.obj ltablib.obj ltm.obj lundump.obj 
  12.  
  13. lvm.obj lzio.obj, lua51.dll, , import32.lib cw32mt.lib, ,   del *.tds   del *.obj   bcc32 -D_isatty=isatty -DNDEBUG -DNO_STRICT;_NO_VCL -Hc -w-par 
  14.  
  15. -O2 -b- -k- -vi -tWC -tWM -tW- -c -DLUA_BUILD_AS_DLL -P- lua.c   ilink32 -Tpe -Gn -j -x c0x32.obj lua.obj, lua51.exe, , 
  16.  
  17. import32.lib lua51.lib cw32mt.lib, ,   del *.tds   del *.obj 

第三步,Hello world。运行编译成功的lua51.exe试试:

  1. print "Hello world!" 

搞定。

  剩下的工作就是读云风译的LUA文档学习了——唉,上了年纪以后学习新东西的难度大多了。

原文链接:http://tech.it168.com/j/2008-02-17/200802171040545.shtml

责任编辑:陈四芳 来源: 来自ITPUB论坛
相关推荐

2011-08-31 16:30:19

Lua多线程

2011-08-23 17:52:39

LUAWeb 开发

2011-08-29 15:10:19

JAVALua 脚本

2011-08-23 09:56:52

UnicodeLua

2009-06-25 16:49:24

Hibernate

2023-11-17 12:04:39

GORM并发

2023-04-12 15:25:09

Bytrace鸿蒙

2011-08-25 13:22:40

CEGUILua脚本

2011-08-25 09:55:27

2022-06-23 09:47:50

混沌工程系统Kubernetes

2018-03-26 14:25:55

KubernetesSkaffold命令

2009-06-16 09:06:37

JavaMailJSP

2012-04-19 12:58:26

TitaniumJSS

2023-08-12 15:05:26

Linuxcp 命令

2021-03-22 08:45:30

异步编程Java

2013-05-14 10:13:06

WindowsLinux操作系统

2023-11-27 19:39:46

Goprotobuf

2023-07-04 16:36:03

Linuxcd 命令

2017-04-05 13:17:26

LinuxShellvi

2011-06-15 10:08:01

Qt CVS
点赞
收藏

51CTO技术栈公众号