终于不用 VC 了
最近一年半做的主要项目是跨平台的。但是只是说说,还没真的去试着在别的平台上 run 起来。因为我们做的是二进制复用,目标模块文件是自定义格式,所以也不太在乎编译器。原计划是在 Windows 下开发,用 VC 编译的。
最近几天真正开始做跨平台了,想来想去,还是改用 gcc 的好 。废弃 VC 倒不是因为它不好,而是想买一台 Mac mini 放在家里用用 :D 一直家里都没买电脑,我也不用笔记本,回家就是打游戏和睡觉。到时候有了机器,在 Mac OS 上自然是没有 VC 用了。
所以,我的跨平台目标就定在了 win32 、freebsd 、linux 和 macosx 。当然,目前我的测试环境只有 win32 和 freebsd ,这几天就在把这两个搞定。
原来的 build 工具是用的 bjam ,这个是 05 年之初选定的。前段时间反省了一下,又考察了最近两年新出的一些 build 工具后,最后还是决定改回 gmake 。到了今天,我在 windows 下的开发环境就成了 gcc(mingw) + gmake + insight 。
今天主要是试了下 insight ,这个 gdb 的图形外壳还是很好用的。唯一美中不足的是:我在注册表 HKEYLOCALMACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug 中把它定为默认调试器后,似乎总不太对劲。 gdb 在 attach 到被调试进程上时老是不正确。反正不能正常工作,也定位不了 source code 。但如果直接用 insight 启动程序则可以顺利调试。
前两天则一直在折腾 gmake ,也是件很痛苦的事情。被折磨了几天后,我放弃了一开始就写出一个通用的 Makefile 模板,打算随着项目进展一点点改进。
gcc 倒是这半年一直在 freebsd 下用,只是用的不够深入。今天想把原来用 vc 编译的东西移植到 mingw 时,就好好研究了一下 gcc 的各种选项。对比 VC 的选项,gcc 要丰富和严谨的多。以前 vc 的命令行用的挺熟,一下子换到 gcc 还是有一点点不适应。
最后,留个自己的一个大工程:打算把项目已有的 C++ 代码全部拿 C 改写一遍。没办法啊,我又爱上 C 了 :D 谁叫我精力旺盛呢。