
如题,c/c++的依赖管理怎么弄啊,对了,假如还考虑 windows 和 linux2 个平台。 其他的语言感觉都很方便啊
比如 java 就简单,maven 就行,就是在 pom.xml 加上就行
rust 有 cargo + crate.io 执行 cargo add xxx 就可以
python 现在用 uv uv add xxx 就可以
js npm add xxx 就可以
但是 c/cpp 怎么弄啊?
1 chtcrack 6 小时 20 分钟前 windows 下有 vcpkg 管理,linux 下就不知道啦,因为没用 linux 编程. |
2 xtreme1 6 小时 15 分钟前 Linux 下也有 vcpkg. |
3 qieqie 6 小时 12 分钟前 纯源码依赖的直接 git submodule ,或者直接复制一份 有二进制的更麻烦一点,还要考虑如何链接,安装 prebuilt 可以用系统的,不太纠结版本的 apt yum brew 安装就好了,或在 cmake 里 FetchContent , 最后就是第三方的包管理器,conan vcpkg 啥的 |
4 sagnitude 6 小时 11 分钟前 自己写 cmake ,和各种 findxxx.cmake ,再祈祷用到的库都能在开发机器上简简单单的 make install ,做成 git submodule 然后 cmake 调用 这是个很烦人的活,但现在这种 dirty work 可以给 ai 生成 [img]https://imgur.com/a/chPpz89[/img] [img]https://imgur.com/a/LBx0dnd[/img] |
5 momo1999 6 小时 3 分钟前 我用 xmake ,还不够就加上 vcpkg 。 |
6 xFrye 6 小时 2 分钟前 可以试试 v 友出品的 xmake |
7 realwxg 5 小时 55 分钟前 |
8 lixile 5 小时 38 分钟前 工具有 好用且全面的中心库 无 自己维护内源 conan 在对应平台 编译(包括编译选项控制和编译调优) 然后上传来使用 |
9 Thymolblue 5 小时 30 分钟前 尽量使用 CMake 的第三方库,因为 findxxx 会很方便,手搓个脚本来执行这些库的跨平台编译(通常只需要 CMake 预处理和编译这两个步骤)。Windows 上兼容性比较好通常不需要再细分版本重新编译。Linux 平台就用 Dockerfile 之类的起目标平台容器来维护依赖。 |
10 lcsoft 4 小时 22 分钟前 可以试试 xmake |
11 shylockhg 3 小时 33 分钟前 把所有 lib 放一个 cmake 工程用 external project 管理,编译安装 tar 打包,根据 libc 版本,区分不同 tar 包 |
12 shylockhg 3 小时 33 分钟前 win 和 linux 就继续区分不同 tar 包就行 |