Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
使用ruby来生成makefile并编译c/c++项目
Ruby Shell
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin
lib
resources
.gitignore
Gemfile
README.md
install
rmake.gemspec

README.md

简介

使用ruby来生成makefile并编译c/c++项目

依赖

  • linux
  • ruby (2.0)
  • make
  • gcc

使用方式

在项目所在的目录下创建 project.rb 文件 内容如下

# 添加项目需要的头文件路径
project do |p|
    p.add_include_path %w{config lib app/controllers} 

    # 添加项目需要的动态链接库的路径
    p.add_ld_library_path %w{/opt/ipc/pc/lib /usr/lib/} 

    # 添加项目需要的动态链接库名称
    p.add_libs %w{service xmlmessage mxml base event ctemplate} 

    p.set :type, 'lib' # default 'app' 用来指定生成的是可执行程序还是动态链接库
end

在项目目录下执行rmake的帮助

Tasks:
  rmake build NAME   # build the NAME project
  rmake build_all    # build all project
  rmake help [TASK]  # Describe available tasks or one specific task
  rmake list         # list all project

Options:
  [--pfile=PFILE]  
                   # Default: project.rb

TODO

  • 封装更优化的DSL
  • 添加测试代码
  • 添加类似configure的命令,并支持标准configure命令的参数
Something went wrong with that request. Please try again.