`
rubynroll
  • 浏览: 204570 次
  • 性别: Icon_minigender_1
  • 来自: Wgt
社区版块
存档分类
最新评论

Rbuild, 让你的项目立即可配置

阅读更多
虽然工作中在用Ruby,却也想在业余的时候用Ruby作点什么东西。

以前用C/C++写东西的时候就有过困扰,一个产品系列总是有那么些差异,需要对一个基础软件进行定制,这个型号的要把这个功能编译进去,那个型号的,需要把另外一个功能编译进去...很羡慕Linux内核有一个好用的基于菜单配置的工具,要是在我的项目中也能用它来管理不同模块的配置该多好啊.....不过要想把Linux内核配置那一套拿出来用,并不简单。

看过一些Ruby DSL方面的文章,觉得用Ruby来作这个东西真是在合适不过了,于是便有了Rbuild.

Rbuild刚刚发布了第一个版本,0.1.0,已经可以用了,内部实现丑陋了些,但是功能却不赖,Rbuild的DSL也很简单,编写RConfig文件与Linux内核的Kconfig文件比起来方便,自由许多。

Rbuild现在已经用于一个嵌入式操作系统的配置管理,效果非常好:)

为了演示Rbuild也可以应用于非C/C++项目,我准备写一个交叉编译arm-elf的工具来作为下一个Rbuild应用的例子,当然,依惯例,GPL之。

Rbuild hosted at sourceforge:
http://www.sourceforge.net/projects/rbuild

4
2
分享到:
评论

相关推荐

    前端开源库-rbuild

    通过深入研究 `rbuild-master` 中的示例,你可以更好地理解 rbuild 如何工作以及如何配置它以满足特定项目的需求。 总之,rbuild 是一个强大且易于使用的前端构建框架,它简化了前端开发过程中的构建环节,提高了...

    像Android R文件一样管理资源.zip

    5. **灵活性**:`R.swift`支持自定义资源命名规则和组织结构,可以根据项目的具体需求进行配置。 6. **版本控制友好**:由于所有的资源引用都在代码中,因此在版本控制中更容易追踪和合并资源变更。 7. **持续集成...

    keil教程 手把手教你使用keil软件

    3. 配置项目属性,如包含路径、宏定义等,以便正确编译和链接。 **四、编程与编译** 1. 在源代码编辑器中编写程序,利用自动补全、语法高亮等功能提高效率。 2. 编译项目,通过"Build Target"或快捷键进行编译。...

    编写可维护的JavaScript(中文)

    14.6 Buildr项目 第15章 校验 15.1 查找文件 15.2 任务 15.3 增强的目标操作 15.4 其他方面的改进 15.5 Buildr任务 第16章 文件合并和加工 16.1 任务 16.2 行尾结束符 16.3 文件头和文件尾 16.4 加工...

    安装步骤:https://blog.csdn.net/qq_53810245/article/details/123674836

    在IDE中,选择“Target” -> “Debug” -> “Options for Target”,然后在弹出窗口中配置你的调试器。 10. 创建项目:在Keil uVision 5中,你可以新建一个项目,选择对应的MCU型号,设置编译器选项,并添加源代码...

    conda-build-action

    现在,让我们深入探讨conda-build-action。这是一个GitHub Action,它整合了conda-build的功能,使得在GitHub的工作流程中自动化构建conda包变得简单。GitHub Actions是GitHub提供的持续集成/持续部署(CI/CD)工具...

    基于KG开发的知识图谱电源知识KBQA程序python源码+运行教程.zip

    您可以放心下载并立即投入使用,若遇到任何问题,随时欢迎您的反馈与交流。 2、适用广泛:无论您是计算机相关专业(如计算机科学、信息安全、数据科学、人工智能、通信、物联网、自动化、电子信息等)的在校学生、...

    Android-Multi-ColorPicker这是最标准和最强大的多色选择器库

    要将Android-Multi-ColorPicker集成到你的项目中,首先需要在你的`build.gradle`文件中添加依赖。如果库位于本地,可以添加如下代码: ```groovy dependencies { implementation fileTree(dir: 'libs', include: ...

    使用ImageLoader图片加载框架加载一张网络图片

    然后,你需要配置ImageLoader的配置器`ImageLoaderConfiguration`,设置缓存路径、线程池大小等参数。通常在应用程序的初始化阶段完成: ```java File cacheDir = new File(context.getCacheDir(), "images"); ...

    android acra将错误日志发送到邮箱

    通过查看这个文件,你可以更深入地了解ACRA的工作原理和具体配置方法。 总之,Android ACRA提供了一种高效且便捷的方式来收集和分析应用的错误日志,有助于开发者快速定位问题,提高应用的质量和稳定性。正确地集成...

    Spark 最简单WordCount

    在Spark中,我们可以通过Scala、Java、Python或R语言进行编程。本教程将重点介绍如何使用Scala编写一个简单的WordCount程序,以及如何在本地和集群模式下运行它。 **一、Spark环境搭建** 1. 安装Java:Spark依赖于...

    AwesomeValidation.jar

    1. **添加依赖**:在项目的build.gradle文件中引入AwesomeValidation的依赖库,并同步项目。 2. **配置规则**:在XML布局文件中,使用框架提供的属性来指定验证规则。 3. **初始化验证**:在Activity或Fragment的...

    Android中EventBus的使用

    首先,你需要在项目的build.gradle文件中添加EventBus的依赖: ```groovy dependencies { implementation 'org.greenrobot:eventbus:3.2.0' } ``` 然后同步项目,EventBus就引入到你的Android项目中了。 ### 3. ...

    EJB3.0详解

    Ant是一个流行的Java构建工具,它通过XML配置文件(如build.xml)来定义构建任务。在EJB项目中,Ant可以用来编译源代码、创建部署描述符、打包EJB JAR文件,并将这些文件部署到服务器。 一个基于Struts+EJB3.0的...

    EventBus简单使用详情总结

    要在项目中使用 EventBus,首先需要将其添加到项目的 build.gradle 文件的 dependencies 部分: ```groovy dependencies { implementation 'org.greenrobot:eventbus:3.2.0' } ``` 然后同步项目,EventBus 就会被...

    App拍照刷新图库

    `build.gradle`是构建脚本,定义了项目的依赖和配置;`myapplicationcamer.iml`是IDE的项目配置文件;`proguard-rules.pro`用于设置代码混淆规则;`src`目录存放源代码,`build`目录是编译后的产物,`libs`目录通常...

    youmi-android-sdk-v3.05_2011-12-30 android应用广告嵌入

    3. **配置权限**:在你的AndroidManifest.xml文件中,添加必要的权限,如互联网权限: ```xml ``` 4. **初始化SDK**:在应用程序的主Activity的`onCreate`方法中,初始化优米SDK,传入APPID和APPKEY: ```...

    Jenkiins_test

    构建步骤:在“构建”部分添加构建步骤,选择“执行Shell”或“Execute Windows batch command”,输入Python相关的构建命令,如`python setup.py build`或`pip install -r requirements.txt`来安装依赖。...

    Allusion:一个免费的开源桌面应用程序,用于管理您的视觉库

    运行yarn dev将项目文件/build到/build目录。 这将继续运行以在更新时立即构建更改的文件。 在第二个终端中,运行yarn start以启动应用程序。 修改文件后刷新窗口 (Ctrl/Cmd + R) 以加载更新的构建文件。 发布版本...

    circleci-matrix:小型工具,用于在CircleCI上镜像TravisCI的构建矩阵

    你可能需要根据自己的项目需求对生成的配置进行微调。 标签中提到的“continuous-integration”是指持续集成实践,它强调频繁地将开发者的更改合并到主分支,并立即运行自动化测试。而“build-pipelines”指的是...

Global site tag (gtag.js) - Google Analytics