机器人学术协作环境下软件开发的构建系统

Daniele E. Domenichelli, Silvio Traversaro, L. Muratore, A. Rocchi, F. Nori, L. Natale
{"title":"机器人学术协作环境下软件开发的构建系统","authors":"Daniele E. Domenichelli, Silvio Traversaro, L. Muratore, A. Rocchi, F. Nori, L. Natale","doi":"10.1109/IRC.2018.00014","DOIUrl":null,"url":null,"abstract":"The software development cycle in the robotic research environment is hectic and heavily driven by project or paper deadlines. Developers have only little time available for packaging the C/C++ code they write, develop and maintain the build system and continuous integration tools. Research projects are joint efforts of different groups working remotely and asynchronously. The typical solution is to rely on binary distributions and/or large repositories that compile all software and dependencies. This approach hinders code sharing and reuse and often leads to repositories whose inter-dependencies are difficult to manage. Following many years of experience leading software integration is research projects we developed YCM, a tool that supports our best practices addressing these issues. YCM is a set of CMake scripts that provides (1) build system support: to develop and package software libraries and components, and (2) superbuild deployment: to prepare and distribute sets of packages in source form as a single meta build. In this paper we describe YCM and report on our experience adopting it as a tool for managing software repositories in large research projects.","PeriodicalId":416113,"journal":{"name":"2018 Second IEEE International Conference on Robotic Computing (IRC)","volume":"120 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":"{\"title\":\"A Build System for Software Development in Robotic Academic Collaborative Environments\",\"authors\":\"Daniele E. Domenichelli, Silvio Traversaro, L. Muratore, A. Rocchi, F. Nori, L. Natale\",\"doi\":\"10.1109/IRC.2018.00014\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The software development cycle in the robotic research environment is hectic and heavily driven by project or paper deadlines. Developers have only little time available for packaging the C/C++ code they write, develop and maintain the build system and continuous integration tools. Research projects are joint efforts of different groups working remotely and asynchronously. The typical solution is to rely on binary distributions and/or large repositories that compile all software and dependencies. This approach hinders code sharing and reuse and often leads to repositories whose inter-dependencies are difficult to manage. Following many years of experience leading software integration is research projects we developed YCM, a tool that supports our best practices addressing these issues. YCM is a set of CMake scripts that provides (1) build system support: to develop and package software libraries and components, and (2) superbuild deployment: to prepare and distribute sets of packages in source form as a single meta build. In this paper we describe YCM and report on our experience adopting it as a tool for managing software repositories in large research projects.\",\"PeriodicalId\":416113,\"journal\":{\"name\":\"2018 Second IEEE International Conference on Robotic Computing (IRC)\",\"volume\":\"120 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2018-01-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"3\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2018 Second IEEE International Conference on Robotic Computing (IRC)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/IRC.2018.00014\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2018 Second IEEE International Conference on Robotic Computing (IRC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IRC.2018.00014","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3

摘要

机器人研究环境中的软件开发周期是忙乱的,并且在很大程度上受到项目或论文截止日期的驱动。开发人员只有很少的时间来打包他们编写的C/ c++代码,开发和维护构建系统和持续集成工具。研究项目是不同小组远程和异步工作的共同努力。典型的解决方案是依赖二进制发行版和/或编译所有软件和依赖项的大型存储库。这种方法阻碍了代码共享和重用,并且经常导致难以管理其相互依赖关系的存储库。根据多年的软件集成研究项目的经验,我们开发了YCM,这是一种支持我们解决这些问题的最佳实践的工具。YCM是一组CMake脚本,它提供(1)构建系统支持:开发和打包软件库和组件,以及(2)超级构建部署:以源形式准备和分发包集作为单个元构建。在本文中,我们描述了YCM,并报告了我们在大型研究项目中采用它作为管理软件存储库的工具的经验。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
A Build System for Software Development in Robotic Academic Collaborative Environments
The software development cycle in the robotic research environment is hectic and heavily driven by project or paper deadlines. Developers have only little time available for packaging the C/C++ code they write, develop and maintain the build system and continuous integration tools. Research projects are joint efforts of different groups working remotely and asynchronously. The typical solution is to rely on binary distributions and/or large repositories that compile all software and dependencies. This approach hinders code sharing and reuse and often leads to repositories whose inter-dependencies are difficult to manage. Following many years of experience leading software integration is research projects we developed YCM, a tool that supports our best practices addressing these issues. YCM is a set of CMake scripts that provides (1) build system support: to develop and package software libraries and components, and (2) superbuild deployment: to prepare and distribute sets of packages in source form as a single meta build. In this paper we describe YCM and report on our experience adopting it as a tool for managing software repositories in large research projects.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信