从Tiny C Compiler (TinyCC或TCC) 0.9.25 Windows二进制发行版的tcc-win32.txt翻译而来。
TinyCC
====== 这篇文档包含了在MS-Windows下使用的特定信息。查看tcc-doc.html了解全部特性。 从源码编译: ------------------------ * 你可以使用MinGW和MSYS工具,可以在这个地址获取到它们 http://www.mingw.org解压TCC压缩包,在MSYS Shell中输入:
./configure make make install默认安装位置是 c:\Program Files\tcc
* 此外还可以用MinGW中的GCC编译TCC;使用 win32\build-tcc.bat复制win32目录下的所有内容到想要的地方即安装。
从二进制ZIP压缩包安装: ----------------------------------------- 解压压缩包到想要的目录。 (注意,压缩包不包含libtcc。如果想要TCC作为动态代码生成器,请用源码发行版。) 设置系统变量PATH: -------------------- 想要随时调用tcc(如在命令行输入tcc),请把tcc.exe所在目录添加到PATH。例子:
--------- 打开命令行,‘cd’到例子所在的目录。对于“Fibonacci”例子,输入:
tcc fib.c对于"Hello Windows"GUI例子,输入:
tcc hello_win.c对于“Hello DLL”例子,输入:
tcc -shared dll.c tiny_impdef dll.dll (可选) tcc hello_dll.c dll.def 导入定义文件: ------------------------ TCC使用导入定义文件(.def)代替库文件来连接Windows系统的DLL。tiny_impdef程序可以为任何DLL生成.def文件,比如:
tiny_impdef.exe opengl32.dll把opengl32.def放到tcc/lib目录下。程序要连接opengl32.dll时,在tcc的命令行加上 -lopengl32。
头文件: ------------- 系统头文件(除了 _mingw.h)来自MinGW程序: http://www.mingw.org/Windows头文件中只包含了一小部分。如果需要更多头文件,可以从MinGW “w32api”获得。
资源文件: --------------- TCC可以像MinGW的Windres.exe一样链接链接coff格式的Windows资源。例如: windres -O coff app.rc -o appres.o tcc app.c appres.o -o app.exeTiny Libmaker:
-------------- tiny_libmaker工具(作者是Timovj Lahde)可以代替ar从一些目标文件中生成库,比如 tiny_libmaker [rcs] library objectfiles ... 限制: ------------ - 对于目标文件,TCC现在只支持ELF格式,不支持MinGW和MSVC使用的COFF格式。 在TCC和这些编译器之间交换目标文件和库文件是不可行的。 不过,可以使用tiny_libmaker或MinGW的ar由TCC编译的目标文件生成TCC可用的库文件。- ELF标记开头没有下划线。
- 只能导入或导出DLL函数,数据还不能;
- 目前不支持边界检查(参数 -b);
- 还不能支持64位系统。
文档和许可证: -------------------------- TCC按照GNU LGPL协议发行(查看COPYING文件或http://www.gnu.org/licenses/lgpl-2.1.html)TCC主页是:http://fabrice.bellard.free.fr/tcc/
WinAPI帮助和第三方工具: -------------------------------- Windows API文档(一个.hlp文件)可以在lcc-win32站点以"win32hlp.exe"的文件获取, 或者在其他地方以"win32hlp_big.zip"的文件获取。ResEd是一款出色的RAD工具,可以用来创建对话框等Windows资源文件。这个工具可以在RedASM获取。
--- grischka