使用waf对项目进行编译

由于用ns3需要加载一个第三方库,摸索了几天终于对这个工具有了一定了解,感觉熟悉之后非常效率,可读性也比makefile强,还是可以推荐用一下的。以下附上一个简单的使用方法:
目录结构:

.
├── include
│   ├── Assertion.h
│   ├── Backup.h
│   ├── Column.h
│   ├── Database.h
│   ├── Exception.h
│   ├── ExecuteMany.h
│   ├── SQLiteCpp.h
│   ├── Statement.h
│   ├── Transaction.h
│   ├── Utils.h
│   └── VariadicBind.h
├── main.cc
├── src
│   ├── Backup.cpp
│   ├── Column.cpp
│   ├── Database.cpp
│   ├── Exception.cpp
│   ├── Statement.cpp
│   ├── Transaction.cpp
│   └── wscript
├── waf
└── wscript

该目录结构需要包含根目录和子目录下两个wscript,任务是使用src文件夹和include文件夹下的文件编译生成一个静态库和动态库,并编译链接main.cc文件,则两个wscript内容分别可以这样写:

from waflib.Context import WAFVERSION
from waflib import *
import os

top='.'
out='build'

print("Now you are using waf tool of version ",WAFVERSION)

def options(opt):
	opt.load('compiler_cxx')
	path=os.path.join(opt.path.abspath(),'include')
	opt.add_option('--include',action='store',default=path
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值