由CMake构建的vs2005项目的弊端之我见

距离第一次使用CMake已经3~4个月了,虽然这个工具能由彻头彻尾的源代码生成各种IDE下面的项目

但我还是感到很不爽,因为所生成出来的项目并不完全等同于真正意义上的实打实的项目,这个不容易理解

我可以举个例子,如同我将box2d的源码生成为VS2005的项目之后

ok,虽然双击build出来的.sln文件可以正常编译生成出来的项目,但是,

实际上项目中的头文件还是在源码文件夹下面的,也就是说,

在这个生成出来的VS2005项目中,cpp文件,h文件只相当于源码文件夹中的快捷方式~

3个月前刚刚研究box2d源代码的时候,对box2d是刚认识,对c、c++也不熟练,对vs2005 c++部分更是不熟练

我就每天鼓捣项目设置,争取能够理解项目设置中每一项设置到底会影响到什么,就是下面这个图里面的东西:


我花了很长一段时间来摸索,因为我有一个很明确的目标,我要将box2d里面的所有源码文件copy到项目的文件夹里面

不再使用由cmake生成出来的那种所有源代码文件都被映射成快捷方式的项目,这样的话让我感觉自己对项目的结构了如指掌,踏实!

可以对比一下cmake生成出来的项目真正包含.cpp,.h文件的项目间的差别:

1.项目在文件系统中目录结构的对比:

下面是真正包含cpp,h文件的vs2005项目在文件系统中的目录结构


下面是由cmake生成出来的vs2005项目在文件系统中的目录结构(包含的是由源文件编译好的obj文件):


2.用vs2005打开项目之后的对比:

下面是我由源码重新构建(包括freeglut,glui这两个框架类库,使用的源码而非lib,dll文件)的box2d项目:


下面是由cmake构建出来的项目

(看着好像cpp文件就在项目文件夹中,实际上如上所述,这里所陈列的仅仅是如同快捷方式版的物件):


当然,这也仅仅只是我的个人意见,在大牛们看来,一份源码供多种IDE共同使用,这样很好!!

但是在我这个小菜菜看来,任何脱离我掌控的东西所带给我的都是迷惘,我必须要搞清楚其间的真相

这就是我对cmake所生成项目的看法~

有一天,我会试着去深入了解cmake所带来的好处,但是这个离现在应该还有蛮长一段时间~

3.Box2D压缩包解压后的目录层级结构:


CMakeGui由Box2D源码生成VS2005项目的配置


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值