V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
phlamenco
V2EX  ›  分享创造

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

  •  
  •   phlamenco · 2016-09-13 21:52:22 +08:00 · 1980 次点击
    这是一个创建于 2995 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Hi, guys

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

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

    所以就自己撸了一个。

    https://github.com/boully/comake

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

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

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

    5 条回复    2016-09-19 09:15:42 +08:00
    phlamenco
        1
    phlamenco  
    OP
       2016-09-13 22:06:48 +08:00
    欢迎大家试用
    itfanr
        2
    itfanr  
       2016-09-14 09:16:30 +08:00
    也就只有单身有空了 我结婚后时间很少了
    itfanr
        3
    itfanr  
       2016-09-14 11:52:04 +08:00
    你从哪里获取依赖呢? c++没有中心仓库
    phlamenco
        4
    phlamenco  
    OP
       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
        5
    itfanr  
       2016-09-19 09:15:42 +08:00
    @phlamenco 牛人
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1016 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 21:55 · PVG 05:55 · LAX 13:55 · JFK 16:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.