TinyC(TCC) 获得 LibTcc.dll 的简单方法
来源:互联网 发布:偶像大师 知乎 编辑:程序博客网 时间:2024/06/04 23:18
长期从 CSDN 里 down 东西,获得支持, 可未曾为其添砖加瓦, 今天获知一个技巧性的东西,和大家共享。 ^_^
最近寻找可放在自己程序里的 C/C++ 脚本(所谓嵌入式脚本),CInt、Tcc 等等都试了个遍,最后看中这个两个。
特希望 Cint可用(虽然是日本人写的,丰田本田松下等等东东也为我们所用嘛,所以就不介意用人家的源代码啦),毕竟这东东是 C++ 的。 可不管怎么编译(MinGW中), 获得的 LibCint.dll 怎么 LoadLibrary 都是失败,官网发布的LibCint.dll也是一样的问题, 让人灰心。
退而求其次, Tcc 这么小,挺可人,说明、例子看起来使用都很简单,可惜只是 C99 的。
可找老半天,就找不到 LibTcc.dll. 只好自己编译啦。
方法一:
根据 《基于Tiny C compiler的c脚本混合编程方法》,在 MinGW 中编译获得:
gcc -O2 -shared -Wall -Wl,--export-all-symbols -mpreferred-stack-boundary=2 -march=i386 -falign-functions=0 -fno-strict-aliasing -DTCC_TARGET_PE -DLIBTCC -o libtcc.dll tcc.c
好,该Dll 用 libtcc_test.c 测试通过。
方法二——本帖要说的简单方法:
灵机一动, TCC 号称最小编译器,但也是编译器嘛,所以直接用 TCC来编译自己获得:
tcc -shared -rdynamic -o libtcc.dll tcc.c
注意参数, 参数的说明,可参见 tcc.c 源程序本身。
哈哈,用 libtcc_test.c 测试,一样OK。
最近寻找可放在自己程序里的 C/C++ 脚本(所谓嵌入式脚本),CInt、Tcc 等等都试了个遍,最后看中这个两个。
特希望 Cint可用(虽然是日本人写的,丰田本田松下等等东东也为我们所用嘛,所以就不介意用人家的源代码啦),毕竟这东东是 C++ 的。 可不管怎么编译(MinGW中), 获得的 LibCint.dll 怎么 LoadLibrary 都是失败,官网发布的LibCint.dll也是一样的问题, 让人灰心。
退而求其次, Tcc 这么小,挺可人,说明、例子看起来使用都很简单,可惜只是 C99 的。
可找老半天,就找不到 LibTcc.dll. 只好自己编译啦。
方法一:
根据 《基于Tiny C compiler的c脚本混合编程方法》,在 MinGW 中编译获得:
gcc -O2 -shared -Wall -Wl,--export-all-symbols -mpreferred-stack-boundary=2 -march=i386 -falign-functions=0 -fno-strict-aliasing -DTCC_TARGET_PE -DLIBTCC -o libtcc.dll tcc.c
好,该Dll 用 libtcc_test.c 测试通过。
方法二——本帖要说的简单方法:
灵机一动, TCC 号称最小编译器,但也是编译器嘛,所以直接用 TCC来编译自己获得:
tcc -shared -rdynamic -o libtcc.dll tcc.c
注意参数, 参数的说明,可参见 tcc.c 源程序本身。
哈哈,用 libtcc_test.c 测试,一样OK。
此法真是简单方便呀, 特别是对类似我这种长期在Win下编程的人。。。 说不定还能玩出其他花样。。。
cint性能比php还差很多....
tcc要好很多.但有很多BUG
其实C/C++的设计并不太适合用做脚本.选它们做脚本还不如用专门的脚本语言.像lua/javascript这些..
另外,如果真要用C/C++脚本.建议用ch.这玩意是商业软件.质量比较好.而且有免费版可以用.
- TinyC(TCC) 获得 LibTcc.dll 的简单方法
- TinyC的VC++版
- windows下开启TCC模式的方法
- 从dll中获得.lib的方法
- 经纬度的最简单获得方法
- 终端获得root权限的简单方法
- 获得connectstring简单方法
- vc封装dll类的简单方法
- TCC
- 使用libtcc
- 最简单的获得控制台一行输入的方法
- TCC编译带通用对话框及资源的简单记事本程序
- EDMA里TCC的作用
- java中获得日期时间的简单方法
- 获取DLL的模块的句柄的简单方法
- 非常简单的利用CreateProcess注入DLL的方法
- ASP.net app_Code dll 类中获得当前路径的方法(非页面中)
- 把vc中的类封装成dll的简单方法
- TinyC的VC++版
- 全排列库函数
- 为什么你应该(从现在开始就)写博客
- Java算法学习(栈操作实例)
- Linux下automake软件编译与发布之多级目录结构的处理
- TinyC(TCC) 获得 LibTcc.dll 的简单方法
- 当我给了你体谅也给了自己远方:伤感日志
- 欧拉函数学习小结 #nobody
- Install Homebrew
- flexigrid 添加行选择事件
- POJ 1988 Cube Stacking(带权并查集)#by zh
- 一步一步教你写SAP RFC (实战项目)
- ubuntu建立向windows一样的快捷方式
- 由爱而生,由生而爱,生生不息