跨平台开发学习笔记

        以前我的开发仅仅是局限在MSVC中,当时就隐约有一种想法,想跳出这个框框,因为我感觉MSVC把我限制的太死,以至于我没了MSVC,就不会怎么编程了。由于在公司做平台开发项目以及自己对这种突破的渴望,在这跨平台开发方面的知识补充了不少,也认识了不少。知道MSVC只是一个集成开发环境,它用的编译器是cl.exe,链接器是link.exe,项目管理工具MSBuild,*.vcxprj是MSBuild的脚本,MSBuild类似nmake, make等自动编译工具等等等(参见make和msbuild学习笔记)。

        跨平台开发环境配置可参见windows跨平台开发环境配置,通过这个配置可集成mingw/msys, make, vim, cmake, svn, git等开发相关利好工具。而我公司的平台项目的开发环境配置跟这个是一样的。对整个项目的管理的思路大致是这样子的,使用cmake写项目管理脚本,然后可分别生成make脚本和msvc工程,再分别对其进行编译。因为项目的管理只包括cmake脚本,所以在windows上进行跨平台开发时如果能够区分在不同操作系统下代码接口及正确格式的使用,那么在将整个项目搬到linux环境下进行编译基本上是可行的。PS: 随着对跨平台开发的了解越多,我越来越佩服我组的架构师了。

        要掌握跨平台开发,先从外围上来讲,需要精通cmake,cmake是跨平台编译工具,会使用cmake管理设置在不同操作系统下, 不同的编译工具下, 以及分别在32bits和64bits下的工程配置,那么你对整个项目的了解就抓住了源头。依据我的实践经验,学习cmake也是学习跨平台的源头,抓住源头来学习这是一条最正确的路了。而其次就是代码编辑工具,编译工具,调试工具,性能分析工具的选择,编辑工具我觉得vim是很好用的(使用vim编码能让自己有一种极客编程的沉浸感);编译工具可分不同的环境,make, msbuild (或者是vs), nmake;调试工具windows上可使用vs,code block,linux下可使用gdb,code block;性能分析工具vs的profiler还是不错的,gcc的gprof应该也不错。这些工具希望有机会都能够全都试一遍,比较一下。那么从内在上来讲,那就是代码上的跨平台了。

        跨平台开发是很有竞争性的也是非常有挑战性的,加油!奋斗

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值