赞
踩
lua使用 tinycc
1.下载tinycc
http://bellard.org/tcc/
http://repo.or.cz/w/tinycc.git 最新的
2.编译tcc
需要mingw
进入 tinycc/win32
运行build-tcc.bat
win32/libtcc 下面是 libtcc.a 和 libtcc.h
win32 下面是tcc.exe 和 libtcc.dll
include 和lib 目录是 tcc.exe所需要的c运行时库和头文件,必须与tcc.exe在同个目录。
libtcc.dll也必须与tcc.exe在同个目录。
linux下x86_64平台,tcc编译.a需要使用-fPIC,因为lua库luatcclib.so是share object需要链接。
3.使用tcc
程序 表示使用tcc的主程序,代码 表示程序用tcc动态编译的对象。
a.
如果是程序使用libtcc.dll或libtcc.a,那么这个程序同级目录下也需要有 include lib目录 以及 libtcc.dll。
不然就报找不到cruntime头文件定义错误,以及 cannot find library: tcc1的错误。
或者通过tcc_set_lib_path设置含有lib和include文件夹的目录。必须在tcc_new()后 tcc_set_output_type前马上设置。
b.
如果程序使用vs 编译,需要根据 win32/lib/libtcc.def 生成 libtcc.lib,拷到libtcc目录下。命令如下:
lib /machine:ix86 /def:libtcc.de
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。