Giter VIP home page Giter VIP logo

buildmake's Introduction

buildmake

采用python编写的一个用于快速构建c/c++项目编译环境的工具。具体功能如下:

  • 支持快速生成一个c/c++项目的Makefile文件
  • 支持快速构建大中型c/c++项目的完整编译环境,包括各种第三方lib库的依赖
  • 能够与github或者其它git管理平台有机结合,灵活的支持大中型项目的编译依赖管理,包括依赖库的下载,自动更新,指定特定的git分支依赖等
  • 支持二进制可执行文件,静态链接库,动态链接库等各种形式的源码发布

Requirement

  • linux平台下的c/c++项目
  • 需要安装python 2.x环境

Tutorial

Configure

# Create a dir
mkdir -p ~/tools
cd ~/tools

# Get buildmake
git clone https://github.com/str2num/buildmake.git

# Create alias
# Add line below to .bashrc
alias buildmake='~/tools/buildmake/buildmake'
source ~/.bashrc

# Check buildmake
buildmake -h

# Output is:
The buildmake tool can automatically help users build a complete compilation
environment for C/C++ project, and generate Makefile. It will read the BUILDMAKE file
in the current directory, then build environment and generate Makefile. Users need to
provide this BUILDMAKE file. The default BUILDMAKE file can generate by buildmake
using -G option.

VERSION: 1.0
options:
    -h --help                  help infomation.
    -G --generate              generate default BUILDMAKE file
    -U --update environment    if the current project depends on another third libraries,
                               these libraries can be update from git.
    -B --build environment     building project, then generate the binary file
    -v --version               current version

usage

# 1. 生成一个默认的BUILDMAKE配置文件模板
buildmake -G

# 2. 根据实际需要修改模板中相应的编译选项
vim BUILDMAKE

# 3. 更新所有的第三方库依赖并编译
buildmake -UB

# 4. 生成Makefile文件
buildmake

# 5. 编译项目
make

More detailed documentation and tutorials

https://buildmake.mydoc.io

buildmake's People

Contributors

str2num avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.