龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

跨平台代码调试

时间:2009-12-22 15:42来源:未知 作者:admin 点击:
分享到:
在开发中,为了代码的重用,我们总是把核心算法同界面部分分开, 核心算法一般都用C来写,并且希望代码能在其他平台上编译和运行。在微软 平台上有VC,在Unix和一些嵌入平台(pa

  在开发中,为了代码的重用,我们总是把核心算法同界面部分分开,

  

核心算法一般都用C来写,并且希望代码能在其他平台上编译和运行。在微软

  

平台上有VC,在Unix和一些嵌入平台(palm...)用gcc。假如代码编写好后再

  

移植,就够难受了。最好是写代码的时候就支持。假如在公司干,你可以多要

  

机器,一台装2000,一台装Linux,代码还得拷来拷去,或者用Telnet用服务器,

  

假如只有一台电脑,就惨了,装两个操作系统,重新启动,切换操作系统。

  

这里有个软件就可以解决这个烦恼,作到在windows下对同一份源码

  

用VC和gcc同时编译和调试,它就是cygwin。我用的是vc6.0,gcc2.95.2。

  

1,安装cygwin

  

首先安装cygwin,cygwin是cygnus.com的产品,到它的网站下载,

  

可以直接在网上安装,别忘了在安装时一定要选上gcc选项。

  

2,代码目录

  

我的代码目录是ZCore,下面是子目录,子目录Build里有两个子子目录:

  

VC和gcc分别保存VC的工程文件和gcc的Makefile;子目录Src是代码目录;

  

子目录Doc中是代码的Readme等说明(不习惯英文代码中出现中文注释),代码

  

要编译成静态库。VC的编译环境不用说了,我们来看如何建立gcc的编译环境。

  

Makefile要自己写了,我的cygwin中没有Makefile辅助工具。运行cygwin。

  

3,影射目录

  

我们首先将win32目录mount成posix目录,运行mount查看原来已经

  

mount的路径。我的ZCore的路径是:d:studyzcore,我想影射成/zcore,

  

命令是:"mount d:/study/zcore /zcore"。有个警告,不过没问题。现在

  

在用mount查看,就多了一条。这个信息保存在注册表

  

[HKEY_CURRENT_USERSoftwareCygnus SolutionsCygwinmounts v2/zcore]

  

假如要卸载就用命令"umount /zcore"。

  

4,gcc编译

  

用"cd /zcore/build/gcc"进到编译目录,make就可以了。

  

  

这样就可以用VC调试代码时同时用gcc编译,将来向其他环境移植就轻松多了。

  

精彩图集

赞助商链接