scons

目前的程序是每个模块一个目录,每个目录都有对应的_make, src, test等等。

在类库以及工具的开发中,使用vs studio里面的denpendencies和vsprops来声明模块间的依赖关系

这样每个模块都不会变得很臃肿,编译速度也快

不过如果要给用户使用的话,引用很多的类库显然并不方便

最简单的方式就是只编译出一个类库

另外,在部署的时候也应该只有单个的src, lib, bin之类

怎么从现在的目录结构生成部署的结构呢?

或者,怎么build automation呢?

找了一圈,决定用scons

cmake好像很popular,但是很多地方我不喜欢,比如自己定义的一套语法,比如每个源文件目录都得有CMakeList文件等等。

理想的情况是类似于ant这种工具

不过nant好像是针对.net的。也可以用于c++,但是感觉还是很不方便,而且文档也很少

转了一圈,还是又回到scons

scons建立于python基础之上,所以python里面任何语法,函数和工具都可以直接使用

感觉scons也很成熟,google chrome就用了scons

scons的语法很简单,不过感觉文档不好,例子都太简单,网上的资料也不是很多,害得我花了很多时间搞明白一些简单的东西,有时间真想自己写一下文档

今天又碰到一个链接的问题,是编译选项的问题,不过没有时间再琢磨怎么用scons解决了,明天还得跟老板交差

感觉c++里面编译链接的学问很大,比如unicode或者multi-byte,比如静态类库或者动态类库,比如debug和release,比如single thread或multiple thread,等等。有时间得彻底研究归纳一下。

最近找工作,很想花时间把开源的网站弄弄,加些文档和screenshot。但是太忙,总是抽不出足够的时间。

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s