一个类似 go get 的 c++项目管理和编译工具

2016-09-13 21:52:22 +08:00
 phlamenco

Hi, guys

最近在使用 go get 时想到,如果 c++也有类似的工具就太好了(毕竟 lz 工作主要使用 c++),这样依赖的拉取和编译就能很快搞定,实在是很酷。

lz 查看了现有的工具,比如 cmake 和 bazel ,发现都不是很符合自己的口味哎😌。

所以就自己撸了一个。

https://github.com/boully/comake

名字和功能受到了狼厂的 comake2 的启发,但是两者之间并没有关系的。

因为是业余时间写的,代码随意堆砌的,很难看。。不过大致上我想要的功能已经基本实现了,它现在可以自动拉依赖,切换依赖版本,编译依赖,自动生成 Makefile 。

项目的更新速度很慢(因为 lz 工作实在是在忙了,忙到女朋友都没时间找),欢迎大家提交 pull 和各种需求,建议。

1979 次点击
所在节点    分享创造
5 条回复
phlamenco
2016-09-13 22:06:48 +08:00
欢迎大家试用
itfanr
2016-09-14 09:16:30 +08:00
也就只有单身有空了 我结婚后时间很少了
itfanr
2016-09-14 11:52:04 +08:00
你从哪里获取依赖呢? c++没有中心仓库
phlamenco
2016-09-14 19:41:30 +08:00
@itfanr
COMAKE 文件中有:

[[dependency]]
uri = "https://github.com/gflags/gflags.git"
tag = "v2.1.2"

这个是指定依赖和依赖版本的配置。

原来是打算每个项目自带一个 COMAKE 文件,这样通过自己项目的 COMAKE 的依赖列表到 github 上去取依赖,然后再根据依赖的 COMAKE 取依赖的依赖,这样就没有中心仓库了😊。

但是现状是 comake 是一个新生项目,所以做不到每个项目自带一个 COMAKE 文件。作为过渡手段,我在 aliyun 上搭建了一个“伪中心仓库”( http://beautifuldocument.com:8080/),当 comake 从 github 上拉取依赖时,如果发现没有 COMAKE 文件,就转向往这个“伪中心仓库”获取相应的 COMAKE 文件。
itfanr
2016-09-19 09:15:42 +08:00
@phlamenco 牛人

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/306037

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX