如果 CI 系统只能获取到开源代码的源码包,是否应当使用 C++包管理器来管理内部项目的依赖呢?

zwy100e72:我在开发一个内部的 C++ SDK,该 SDK 依赖于一些开源项目。我目前使用 conan 作为包管理器,从 conan center 下载二进制包并配置 CMake 的find_package。但是公司的 CI 系统无法访问公网,只能访问内部站点上托管的开源项目的源码。

我想把 SDK 和依赖打包到一起以二进制形式发布,因此必须从当前配置( conan 从 conan center 下载二进制包)迁移到一种 CI 系统也能使用的方法上。我想我有这么几种选项:

  • 直接使用脚本下载需要的源码包,然后编写脚本和 CMake 配置文件来编译 SDK 和 SDK 的依赖
  • 内嵌一个包管理器,给包管理器编写脚本,用包管理器来管理构建中的依赖关系
  • 更进一步,将包管理器分发给下游开发者,为他们自动配置 SDK 的依赖关系

所以问题来了:到底要不要用包管理器,如果用的话,vcpkgconan 该怎么选? 我两种包管理器都用过一段时间。

PS:这个 SDK 是用 cmake + visual studio 来编译的;不过后续可能要做跨平台到 Android 和 iOS 上面去

(本问题英文版本是我本人发布于 Reddit 的,中文版本也是我自己编写的。)

nightwitch:自带源码呗, 放 third_party 里面。需要升级的时候替换文件

如果!设置了多个OR条件 - php

我无法在我的一生中使用它,这是PHP。<?php if (!isset($_POST['ign']) || ($_POST['email'])) { echo "Please enter all of the values!"; } else { echo "Thanks, …

如果__name__ =='__main__',则为Python的Powershell等效项: - python

我真的很喜欢python的功能,例如:if __name__ == '__main__': #setup testing code here #or setup a call a function with parameters and human format the output #etc... 很好,因为我可以将Python脚本文件…

[15-40K] PingCAP - CI 工程师 [北京,上海,广州,深圳,杭州,成都] [开源公司]

thix:岗位职责: 负责 PingCAP CI/CD 系统的设计、开发和维护工作; 优化 CI/CD 系统,提升环境稳定性,提高问题诊断效率。 任职要求: 熟悉 Linux,熟练使用 shell 等脚本,有 Jenkins 等 CI 工具的使用经验; 熟悉敏捷开发,有实践参与经验,善于发现研发过程中的问题并能给出和实施解决方案; 热爱 DevOps,持续集…

备案期间域名能解析境外吗

zok2002:备案期间域名能解析境外吗,境内不解析

不严谨研究,头戴式耳机白发带

revalue:头戴式耳机。最近发现平时戴“头带”的地方,白头发特别多。本人白头发不是平均分布的,就是主要分布在耳机“头带”的地方,尤其是头顶。在公司研究了一圈,玩耳机的、不玩耳机的。发现玩耳机的这一区域白头发特别猛。有没有哪位水友一起研究一下