基于xmake,助力打造C/C++依赖包生态

waruqi 2019-08-14 07:53:49
xmake集成了内置的远程包依赖管理,用户只需要简单地在项目中添加自己所需要的包和版本,即可自动下载和集成对应的包到项目中,并且实现编译和链接。 例如: ```lua add_requires("libuv master", "ffmpeg", "zlib 1.20.*") add_requires("tbox >1.6.1", {optional = true, debug = true}) add_requires("boost", {alias = "boost_context", configs = {context = true}}) target("test") set_kind("binary") add_files("src/*.c") add_packages("libuv", "ffmpeg", "tbox", "boost_context", "zlib") ``` xmake的包仓库设计之初,就考虑到了语义版本支持,以及依赖包的跨平台支持,只要包自身能支持的平台,都可以集成进来,比如zlib包,在xmake中使用,iphoneos, android以及mingw平台下都是完全可用的。 用户只需要简单的切下构建平台: ```bash xmake f -p iphoneos -a arm64 xmake note: try installing these packages (pass -y to skip confirm)? in xmake-repo: -> zlib 1.2.11 please input: y (y/n) => download https://downloads.sourceforge.net/project/libpng/zlib/1.2.11/zlib-1.2.11.tar.gz .. ok => install zlib 1.2.11 .. ok ``` 就可以对iphoneos平台下载集成`add_requires`中对应的包,xmake的最终目标,是打造一个跨平台的包仓库,用户不再需要满地找c/c++库,然后研究各种平台的移植,只需要简单的添加上包依赖,即可在各个平台都能方便使用。 当然了,目前xmake的官方仓库还在发展初期,里面的包还很少,支持的平台也不是很完善,因此,这里我简单介绍下用户如何去自己制作和上传自己需要的c/c++包,并如何提交到我们的仓库中(也可以自建私有仓库), 希望有兴趣的小伙伴可以帮忙贡献一份微薄之力,一起共同打造和建立c/c++依赖包生态。 * [项目源码](https://github.com/xmake-io/xmake) * [官方文档](https://xmake.io/#/zh/) 完整原文: https://tboox.org/cn/2019/08/09/xmake-upload-package/
...全文
184 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
waruqi 2019-08-20
  • 打赏
  • 举报
回复
引用 3 楼 痴痴笑笑的回复:
可以将cmake的文件直接转成xmake吗?
暂时不能,但xmake可以转cmakelists
waruqi 2019-08-20
  • 打赏
  • 举报
回复
引用 2 楼 痴痴笑笑的回复:
楼主,VSCode的插件做了吗?
做了 vscode.idea clion vim sublime插件都有
  • 打赏
  • 举报
回复
可以将cmake的文件直接转成xmake吗?
  • 打赏
  • 举报
回复
楼主,VSCode的插件做了吗?
  • 打赏
  • 举报
回复
想法不错,帮忙顶上去

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧