cbuild-一个创建和管理C++项目的工具
cbuild-一个创建和管理C++项目的工具
介绍:
这是个人开发的一个管理C++项目的工具,用shell脚本编写。
可能会不定期更新,也欢迎大家一起完善。
当前开发版本0.5。各版本功能如下:
- version 0.0 -- 初始版本,具备创建、删除、编译、运行项目基本功能
- version 0.1 -- 在0.0版本基础上使用模板文件,方便用户定制自我需求
- version 0.5 -- 重构代码,优化参数选项
使用方法:
github地址:https://github.com/caibingcheng/cbuild
gitee地址:https://gitee.com/jerry323/cbuild
github和gitee中该项目是同步的。
安装:
clone项目到本地,进入项目根目录。
git clone git@github.com:caibingcheng/cbuild.git ~/cbuild
cd ~/cbuild
运行install.sh脚本。
sh ./install.sh #普通安装
sh ./install.sh -f #强制安装,用于重新安装或者添加新功能
安装后,工具包会安装在~/.cbuild下,进入目录,其中template模块包含的是生成项目时一些文件的默认内容,如有需要可以自行修改其中的内容。
注意:在~/.cbuild/template/CMakeLists.txt文件中包含{__CBUILD_PROJECT__}字段,这是工具自定义的,不可修改。
使用:
可用命令:
cbuild -a project #添加项目
cbuild -c project #创建项目
cbuild -r project #删除项目
cbuild -b project #编译项目
cbuild -e project #运行项目
cbuild -f #打开强制开关,可用于强制生成(覆盖)项目、强制编译\移除\运行项目
cbuild -h #显示帮助
cbuild -R #移除当前项目
cbuill -B #编译当前项目
cbuild -E #运行当前项目
cbuild uninstall #卸载工具
大写选项不需要添加参数,默认使用当前项目;比如最近生成的项目或使用-a选项添加的项目。
强制开关打开后造成的项目覆盖破坏是难以逆转的,请合理使用。
注意:项目名称project应该只包含项目名称且合法,不应该包含路径符号和其他非法符号('', '/', '?', etc.)。这是不允许的。
项目树:
project
|--bin
|--#binara file(executable file)
|--build
|--#MakeFile
|--src
|--main.cpp
|--include
|--#include file
|--lib
|--#libs
|--CMakeLists.txt
cbuild-一个创建和管理C++项目的工具的更多相关文章
- java-idea创建maven管理web项目不能解析EL的解决方法
默认会原样输出: 这是由于这样子创建的web.xml的版本不够高 2.5之前web.xml文件中的头定义中,el表达式默认是忽略不解析的,故需要显示声明解析el表达式 所以我们要修改版本: 再< ...
- 使用Axure管理团队项目图文教程 团队协作操作步骤
Axure RP团队版和企业版都支持团队协作,可以创建和管理团队项目,即多人共同创作一个原型.本文通过图文教程的形式,讲解了如何基于Axure Share服务创建和管理团队项目.因为Axure Sha ...
- 从头开始编写一个Orchard网上商店模块(3) - 创建Orchard.Webshop模块项目
原文地址:http://skywalkersoftwaredevelopment.net/blog/writing-an-orchard-webshop-module-from-scratch-par ...
- JAVA WEB快速入门之从编写一个基于SpringBoot+Mybatis快速创建的REST API项目了解SpringBoot、SpringMVC REST API、Mybatis等相关知识
JAVA WEB快速入门系列之前的相关文章如下:(文章全部本人[梦在旅途原创],文中内容可能部份图片.代码参照网上资源) 第一篇:JAVA WEB快速入门之环境搭建 第二篇:JAVA WEB快速入门之 ...
- Django项目创建与管理
1.主题 这部分教程主要介绍如何通过Pycharm创建.管理.运行一个Django工程.对于Django模块的相关知识大家可以参考Python社区. 2.准备环境 Django版本为2.0或更高 Py ...
- IntelliJ IDEA 12创建Maven管理的Java Web项目(图解)
转:http://blog.csdn.net/zht666/article/details/8673609/ 本文主要使用图解介绍了使用IntelliJIDEA 12创建Maven管理的JavaWeb ...
- Django项目的创建和管理
1.主题 这部分教程主要介绍如何通过Pycharm创建.管理.运行一个Django工程.对于Django模块的相关知识大家可以参考Python社区. 2.准备环境 Django版本为2.0或更高 Py ...
- VC 下如何正确的创建及管理项目
讲解 VC 下如何正确的创建及管理项目 本文讲解 Visual C++ 的项目文件组成,以及如何正确的创建及管理项目. 本文所设计的内容是初学者必须要掌握的.不能正确的管理项目,就不能进一步写有规模的 ...
- vs2016 创建 vsto excel 文件项目的一个问题
新工作需要些一个基于Excel开发一个工具,vs的 vsto 功能很好用,封装了基于开发office 开的一些工具.但是在实际使用时,创建项目总是报错,提示打开excel文件失败.项目是需要创建一个e ...
随机推荐
- 获取指定时间的Date对象,IE和Chrome的区别(兼容IE)
网上的大多教程都是 new Date("2016-08-03 00:00:00"); 其实这是Chrome的写法,在IE中并不起作用,在IE中应为 new Date("2 ...
- python 3.6 的 venv 模块
今天,在在使用 pycharm 的使用,进行创建 python的时候,发现使用默认的创建的选项使用的python 3环境 .而我系统默认的python环境是 python 2.7 环境:这就引起了我的 ...
- windows安装Anaconda3
目录 windows安装Anaconda3 环境 安装 windows安装Anaconda3 by 铁乐与猫 环境 windows7 64位 Anaconda3 5.2.0版本 windows64位 ...
- 64位Windows的Dos中取消了edit命令
前段时间在玩dos命令行的时候,用copy con创建了txt文件后想对其进行编辑,然后我又不想用记事本,所以去网上找命令行中对文本文件进行编辑的命令(纯属想装B),结果看到了edit命令. 一敲,就 ...
- elk平台定制化查询规则
一.查询某IP在某时间内TOP10的请求 步骤: 点击“Visualize”选项卡 创建“Data table” 点击“From a new search” 下拉选择“F5-access” 在“buc ...
- Python os.walk() 方法
#coding=utf-8 import os #(dirpath, dirnames, filenames)[文件夹路径, 文件夹名字, 文件名] def file_name(file_dir): ...
- numpy库数组拼接np.concatenate的用法
concatenate功能:数组拼接 函数定义:numpy.concatenate((a1, a2, ...), axis=0, out=None)
- 【转】mysql交互式连接&非交互式连接
交互式操作:通俗的说,就是你在你的本机上打开mysql的客户端,就是那个黑窗口,在黑窗口下进行各种sql操作,当然走的肯定是tcp协议. 非交互式操作:就是你在你的项目中进行程序调用.比如一边是tom ...
- Python 函数(二)
Python 3 函数(匿名函数.偏函数 and 变量作用域:全局变量.局部变量) 一.匿名函数:没有名字,也不再使用 def 语句这样标准的形式定义的一个函数. OCP培训说明连接:https:// ...
- Android 将若干张图片拼接在一起形成一个全新的图片
目的:使用Android技术将若干张图片拼接成为一张图片. 最开始的两张图如下所示: 拼接后的图片如下图所示: 这样就把两张图片拼接成为一张了. 拼接步骤: 1.使用Bitmap创建一个空的Bitma ...