- 本工程是 TinyCC 及其 C 示例的构建工程,用于运行调试
- 所有 TinyCC 源码来自TCC 官方0.9.27 版本
- 仅保留 Mac/Linux/Win 三个平台的源码,去除了其他平台特定代码(为了足够简单)
- 增加了源码注释,支持 Debug/Release 编译模式
- 整个工程 PC 端编译构建采用 cmake 来管理,用于代替 TCC 官方的编译脚本
cd TinyCC/
mkdir buildXcode && cd buildXcode
cmake -DCMAKE_INSTALL_PREFIX=./install -G "Xcode" ..
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/zyk/tcc -G "Xcode" ..
此时已经在 buildXcode 文件夹下生成了 Xcode 工程,直接打开并编译即可
cd TinyCC/
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=./install .. # default is Debug
# for Debug: cmake -DCMAKE_BUILD_TYPE=Debug ..
# for Release: cmake -DCMAKE_BUILD_TYPE=Release ..
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/zyk/tcc -DCMAKE_BUILD_TYPE=Release ..
make
# for more details: make VERBOSE=1
make install
make 命令会自动编译好各个模块
cd TinyCC/
mkdir buildVS && cd buildVS
cmake -DCMAKE_INSTALL_PREFIX=./install -G "Visual Studio 15 2017 Win64" ..
# cmake -DCMAKE_INSTALL_PREFIX=D:/Applications/zyk/tcc -G "Visual Studio 15 2017 Win64" ..
此时已经在 buildVS 文件夹下生成了 Visual Studio 工程,双击打开并编译即可
- demo:TinyCC 库相关用法和应用构建
- example:TinyCC 官方源码中附带的用法示例,做了一些小修改
- tcc:TinyCC 官方源码,加了注释,编译出 TinyCC 动态链接库
- 所有 CMakeLists.txt:用于管理整个工程
- TCC 源码编译中有一个 ONE_SOURCE 模式,需要添加编译参数-DONE_SOURCE=0,tcc.c 也需要
- 源码可分为三部分,分别是 tcc 编译器的动态库、tcc 命令、runtime 静态库
- Ubuntu 下编译 runtime 库可能需要安装 gcc-multilib,具体命令为
sudo apt-get install gcc-multilib
- 针对 64 位 Linux 系统,使用 tcc 进行编译可能需要添加库搜索路径:
-L/usr/lib/x86_64-linux-gnu
- 根据上述编译指引,生成 Visual Studio 工程并执行生成 ALL_BUILD 目标和 INSTALL 目标
- Cygwin 的 shell 下,执行如下命令流程:
cd TinyCC/runtime/win32
make # build libtcc1.a
make run # run demo
make clean
- 此时 tcc 的 runtime 库已经编译好并执行 demo 打印相关日志
- 运行其他 Demo,执行如下命令流程:
cd TinyCC/examples
make
# make run