展开

关键词

xmake-gradle 首发, 集成xmake快速构建Android JNI程序

xmake-gradle是一个无缝整合 xmake 的 gradle 插件。 来实现跨平台开发,优势就是: 简单,快速,对新手友好,另外功能也很强大,具体有那些功能,大家可以到 xmake 项目主页看下相关介绍。 而之前想要用 xmake 编译 android so 库,只能通过命令行的方式比如: xmake f -p android --ndk=xxxx xmake 虽然已经很简单了,但是如果要跟 android 这样,用户就可以在 android studio 方便的用 xmake 来编译 jni 库,以及自动集成了。 欢迎大家来试试哦,新鲜出炉的插件,如果你想要了解更多,请参考:中 项目源码 官方文档 准备工作 我们需要先安装好对应的xmake命令行工具,关于安装说明见:xmake

33420

Xmake 和 CC++ 包管理

Xmake 是一个基于 Lua 的轻量级跨平台构建工具,关于 Xmake 与构建系统的介绍,我们已经在之前的文章中做了详细的介绍:C/C++ 构建系统,我用 xmake。 如果大家已经对 Xmake 已经有了大概的了解,就会知道,它不仅仅是一个构建工具,还内置了对 C/C++ 包管理的支持,我们也可以把 Xmake 理解为: Xmake = Build backend + 在 Xmake 中使用依赖包 Xmake 不仅提供了内置的 xmake-repo 内置的包管理仓库,可以直接集成使用里面的包,还支持以相同的集成方式,去快速集成 vcpkg/conan 等第三方的依赖包 作者从写这篇文章开始,统计了下 vcpkg/conan/xmake-repo 仓库的包数量: vcpkg: 1859 conan: 1218 xmake-repo: 651 可以看到,目前 Xmake Xmake 内置包管理集成 除了接入第三方包管理,我们也更推荐优先使用集成 xmake-repo 内置仓库中提供的包,Xmake 会提供更多特性支持。

7610
  • 广告
    关闭

    腾讯云618采购季来袭!

    一键领取预热专享618元代金券,2核2G云服务器爆品秒杀低至18元!云产品首单低0.8折起,企业用户购买域名1元起…

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    xmake vs cmake对比分析

    因此,xmake的语法描述和使用体验还是非常好的,这也是xmake最大的亮点之一,我在这块设计上做了很多改进,为了降低学习和项目维护门槛,也更容易快速上手。 构建方式 编译默认平台 xmake 通常情况,编译默认平台执行敲xmake,执行构建期间,xmake不会依赖其他第三方构建工具,连make也不依赖,也不会生成IDE/Makefile文件, 而是直接调用的编译工具链进行编译 编译指定平台 xmake xmake可以以近乎一致的方式快速切换不同平台和架构来编译。 xmake install cmake cmake -P cmake_install.cmake 运行目标 xmake 大部分情况下,xmake不需要写自定义脚本就可以直接加载运行编译生成的目标程序 xmake会自动调用conan工具去下载安装openssl库,然后集成使用,只需要执行xmake命令即可完成编译。

    76920

    CC++ 构建系统,我用 xmake

    XMake 是什么 XMake 是一个基于 Lua 的 现代化 C/C++ 构建系统。 它的语法简洁易上手,对新手友好,即使完全不会 lua 也能够快速入门,并且完全无任何依赖,轻量,跨平台。 为什么要做 XMake 每当在 Reddit 社区跟别人讨论起 XMake,大家总是会拿下面这张图来吐槽。 ? 尽管有些无奈,也被吐槽的有些麻木了,不过我还是想说明下,做 XMake 的初衷,并不是为了分裂 C/C++ 生态,相反,XMake 尽可能地复用了现有生态。 XMake 的特性和优势 经常有人问我 XMake 有什么特别之处,相比现有 CMake、Meson 此类构建工具有什么优势,我为什么要使用 XMake 而不是 CMake? 尽管 XMake 是基于 lua,但是借助于 lua 胶水语言的轻量级特性,xmake 已将其完全内置,因此安装完 XMake 等同于拥有了一个完整的 lua vm。

    40720

    使用xmake构建c++20 modules

    关于xmake对c++modules的相关进展见:https://github.com/xmake-io/xmake/pull/569 项目源码 官方文档 Hello Module 关于c++modules ; return 0; } 接下来我们执行xmake来构建下这个程序吧: ruki:hello ruki$ xmake [ 0%]: ccache compiling.release src , 因此这里参考了build2里面的推荐方式,采用统一的*.mpp后缀,来规范xmake下模块项目接口的命令。 当然,这也支持xmake推荐命名方式,而对于*.ixx, *.cppm等后缀名,xmake也是完全兼容支持的,也可以直接添加到add_files中去。 编译参数处理 clang 我们先来看下clang下,是如何处理modules构建的,我们只需要加上-v来执行xmake构建,就能看到所有的细节参数: ruki:hello ruki$ xmake -v

    74140

    xmake v2.2.7 发布, 改进Cuda项目构建

    此外,他还帮忙改进了xmake的整个单元测试框架,自更新程序,命令行tab补全以及ci脚本,使得xmake的更新迭代更加高效和稳定。 而xmake除了支持调用nvcc来编译cuda项目,也可以直接切到clang来编译,例如: xmake f --cu=clang xmake 不过关于devlink,似乎还是需要依赖nvcc,clang 可配置切换nvcc使用的c++编译器 xmake新增了--ccbin=参数可以配置切换,nvcc默认使用的c++编译器和链接器,用法如下: xmake f --ccbin=clang++ xmake 更加方便的自更新命令 之前的版本,xmake已经提供了方便的自更新命令xmake update来更新xmake自身版本,甚至是更新指定分支版本,例如:xmake update dev/master 但是 repo,xmake update gitee:tboox/xmake 更新内容 新特性 #440: 为target/run添加set_rundir()和add_runenvs()接口设置 #443:

    24020

    简单的 CC++ 项目自动化构建--Xmake

    Xmake 简介 https://xmake.io/#/ XMake是一个基于Lua的轻量级跨平台自动构建工具,支持在各种主流平台上构建项目。 /hello 执行完后,将会生成一个简单工程结构:  其中xmake.lua是工程描述文件,内容非常简单,告诉xmake添加src目录下的所有.c源文件: 构建项目 $xmake 运行程序 $xmake 运行下看看: $xmake run 运行和断点调试 我们可以通过xmake run -d命令来加载gdb/lldb调试程序,或者搭配xmake-vscode插件的断点调试支持,来开发和调试Qt程序。 - 知乎 十分钟搞定 C/C++ 项目自动化构建 —— Xmake 入门指南_蓝桥云课的博客-CSDN博客 xmake · 音视频/C++/k8s/Docker等等 学习笔记 · 看云 xmake自动构建工具 - 简书 TBOOX开源工程 XMake 快速开始_w3cschool xmake xmake v2.2.2, 让C/C++拥有包依赖自动构建_waruqi的博客-CSDN博客 xmake从入门到精通

    6010

    xmake v2.3.6 发布, 新增fortran编译支持

    虽然,xmake重点关注c/c++的构建支持,但是其他语言的支持xmake也会不定期做一些改进,其主要目的并不是替代它们官方自身的构建系统,仅仅只是为了支持与c/c++的混合编译,更好的为c/c++项目服务 , 毕竟有些c/c++项目中,还是会偶尔调用其他语言的代码接口,比如与cuda, dlang, objc,swift, asm等语言的混合调用,所以xmake还是会对他们做一些基础性的编译支持。 新特性介绍 Fortran语言编译支持 这个版本开始,我们已经完全支持使用gfortran编译器来编译fortran项目,我们可以通过下面的命令,快速创建一个基于fortran的空工程: $ xmake , 我们也可以通过cmake变相支持它,xmake会自动内部调用cmake中转下生成结果,对用户而言使用上没啥区别,只需要确保cmake已经安装即可: $ xmake project -k xcode xmake-vscode插件intellisense支持 近期,我们也更新了下xmake-vscode插件,通过自动生成compile_commands.json到当前项目的.vscode目录下,然后我们只需要配置

    18330

    xmake v2.6.3 发布,支持 vcpkg 清单模式

    Xmake 是一个基于 Lua 的轻量级跨平台构建工具。 它非常的轻量,没有任何依赖,因为它内置了 Lua 运行时。 目前,Xmake 主要用于 C/C++ 项目的构建,但是同时也支持其他 native 语言的构建,可以实现跟 C/C++ 进行混合编译,同时编译速度也是非常的快,可以跟 Ninja 持平。 它是一个基于 Xrepo/Xmake 的 C/C++ 包管理器的 CMake 包装器。 这允许使用 CMake 来构建您的项目,同时使用 Xrepo 来管理依赖包。 使用来自官方存储库的包 Xrepo 官方仓库:xmake-repo xrepo.cmake 提供xrepo_package函数来管理包。 新增 on_config 配置脚本 在 xmake config 执行完成后,Build 之前会执行此脚本,通常用于编译前的配置工作。

    7930

    xmake从入门到精通1:安装和更新

    $ git clone --recursive https://github.com/xmake-io/xmake.git $ cd ./xmake $ . /get.sh __local__是安装到~/.local/xmake下,然后通过source ~/.xmake/profile方式来加载的,所以安装完,当前终端如果执行xmake失败,提示找不到,就手动执行下 $ xmake update master $ xmake update dev 从指定git源更新 $ xmake update github:xmake-io/xmake#master $ xmake update gitee:tboox/xmake#dev # gitee镜像 如果xmake/core没动过,仅仅更新xmake的lua脚本改动,可以加-s/--scriptonly快速更新lua脚本 $ xmake update -s dev 最后,我们如果要卸载xmake,也是支持的:xmake update --uninstall ?

    74720

    xmake v2.2.8 发布, 新版vs工程生成插件

    最后新版本开始尝试直接安装lua bitcode脚本,来减少安装包的大小(控制在2.4M以内),提高xmake启动加载的效率。 项目源码 官方文档 新特性介绍 使用新版vsxmake集成编译 原先的vs生成插件对xmake的rules是没法支持的。 因为xmake的rules里面用了很多的on_build此类自定义脚本,无法展开,所以像qt, wdk此类的项目就没法支持导出到vs里面进行编译了。 -m "debug;release" 如果没指明版本,那么xmake会自动探测当前已有的vs版本来生成: $ xmake project -k vsxmake -m "debug;release" ,内部直接调用xmake来编译 #487: 通过xmake --files="src/*.c"支持指定一批文件进行编译。

    26210

    xmake v2.3.1 发布, 无缝对接其他构建系统

    新特性介绍 生成build.ninja构建文件 xmake现已支持对ninja构建文件的生成,让用户可以使用ninja来快速构建xmake维护的项目。 不得不承认,目前就构建速度来讲,ninja确实比xmake快不少,后续版本我会尝试优化下xmake的构建速度。 $ xmake project -k ninja 然后调用ninja来构建: $ ninja 或者直接使用xmake命令来调用ninja构建,见下文。 无缝对接xmake命令 目前支持xmake clean, xmake --rebuild和xmake config等常用命令与第三方系统的无缝对接。 $ xmake 交叉编译mingw平台 $ xmake f -p mingw --trybuild=autotools [--mingw=xxx] $ xmake 使用其他交叉编译工具链 $ xmake

    27230

    一个使用 xmake 构建 cc++ 模块的 luarocks 插件

    这里,我实现了一个基于 xmake 构建系统来构建 lua c/c++ 模块的 luarocks 插件 luarocks-build-xmake,来实现更加灵活方便的 lua 模块维护。 相比 luarocks 内建的构建系统,它提供了更加强大的构建配置,支持 c/c++ 依赖管理,相比 cmake 它不需要用户手动安装 xmake,此插件会自动安装 xmake 后,直接编译 lua 模块 luarocks-build-xmake xmake 例子1 (带有 xmake.lua) 如果模块工程中使用了 xmake.lua 来维护构建,那么我们可以直接使用 xmake 去构建它,rockspec /luarocks-build-xmake", tag = "example1" } dependencies = { "lua >= 5.1", "luarocks-build-xmake >= 5.1", "luarocks-build-xmake" } build = { type = "xmake", variables = { xmake =

    15940

    xmake v2.3.7 发布, 新增 tinyc 和 emscripten 工具链支持

    不仅如此,xmake 还对接了 xmake -r 来直接重新编译,对接 xmake clean 实现统一的文件清理,对接 xmake -v 实现统一的详细编译命令的查看。 编译 android 程序: xmake f -p android --trybuild=cmake --ndk=/xxx xmake 编译 ios 程序: xmake f -p iphoneos - 用户不需要关系如果使用 cmake 去传递不同工具链的配置,xmake 都帮你自动处理了,你只需要简单的执行 xmake 来编译,也可以执行 xmake -r 来重编,或者查看编译详情 xmake -v 这样,就不需要走 trybuild 编译了,xmake 会更加完美的支持交叉编译,因为内部 xmake 会直接去编译项目,而不需要在调用 cmake、autotools 等工具了,例如: xmake f 递归导出安装的包 xmake 之前提供了一个命令,可以导出通过 xmake 安装的所有第三方依赖包。

    21410

    xmake v2.3.3 发布, 新增iOSMacOS Framework和App构建支持

    处理之外,xmake还提供了一个特殊的xmake.cli构建rule,通过集成libxmake engine库,来扩展开发基于xmake引擎的程序,比如:做个定制版的xmake,也可以基于此写点lua脚本程序 create -t xcode.macapp -l objc test $ xmake create -t xcode.iosapp -l objc test 编译 $ xmake f -p [iphoneos $ xmake install 我们也提供了辅助工具,来对指定ipa/app程序安装到设备: $ xmake l utils.ipa.install test.app $ xmake l utils.ipa.install xmake版本。 利用xmake内置的各种modules,来开发一些原型程序。

    37310

    xmake v2.3.4 发布, 更加完善的工具链支持

    或者其他编译器,就只能走交叉编译平台:xmake f -p cross。 那xmake还支持哪些内置工具链呢? $ xmake g --theme=ninja ? 显示指定信息和列表 显示xmake自身和当前项目的基础信息 $ xmake show The information of xmake: version: 2.3.3+202006011009 show -l modes 显示内置编译规则列表 $ xmake show -l rules 显示其他信息 还在完善中,详情见:https://github.com/xmake-io/xmake/

    24720

    xmake v2.3.8 发布, 新增 Intel C++Fortran 编译器支持

    $ xmake f --toolchain=icc $ xmake Intel Fortran 编译器支持 之前的版本,xmake 仅仅支持 gfortran 编译器,而这个版本,我们也支持了 Intel $ xmake f --toolchain=ifort $ xmake Wasm平台和Qt/Wasm支持 上个版本,我们新增了 --toolchain=emcc 工具链来支持 wasm 程序的编译, $ xmake f -p wasm [--qt=~/Qt] $ xmake 完成编译后,xmake 会在 build 目录下生成 demo.html 以及对应的 demo.js/demo.wasm 程序 $ xmake f -p mingw -a arm64 $ xmake 另外,在远程依赖包的自动编译集成上,现在带有 cmakelists 的第三方库,即使是 mingw 平台,xmake 也能自动编译集成进来直接使用 更多的发行版安装支持 在新版本中,我们将 xmake 提交了 Ubuntu PPA 源,因此除了现有的脚本安装方式外,我们也可以通过 apt 去快速安装 xmake

    15510

    xmake v2.3.9 发布, 新增独立 Xrepo CC++ 包管理器

    在这个新版本中,我们重点改进了 xmake 的依赖包管理,新增了 Archlinux 和 MSYS2/Mingw 下 的 pacman 包管理器支持,另外我们进一步丰富了 xmake 的官方包仓库 xmake-repo 项目源码 官方文档 入门课程 Xrepo 命令 入门课程 近期,我们也上线了官方的 xmake 入门课程,Xmake 带你轻松构建 C/C++ 项目 以边学边做实验的方式快速学习 xmake 的使用。 $ xmake f -p cross --sdk=/tmp/arm-linux-musleabi-cross in xmake-repo: -> openssl 1.1.1h please input msys2 上安装 mingw 包,需要指定到 mingw 平台: xmake f -p mingw -a [x86_64|i386] xmake 强制安装任意版本的包 由于 xmake-repo xmake f -p myplat1 xmake 如果,有些交叉编译工具链结构复杂,自动检测还不足够,那么可以根据实际情况,使用 set_toolset, set_cross 和 set_bindir

    22330

    xmake v2.3.5 发布, 多工具链灵活切换支持

    关于这块的完整配置例子,可以参考:https://github.com/xmake-io/xmake-repo/blob/master/packages/l/luajit/port/xmake.lua .tar.gz 然后使用下面的命令,设置包下载的搜索目录: $ xmake g --pkg_searchdirs="/download/packages" 然后重新执行xmake编译时候,xmake会优先从 这块的具体详情见:https://github.com/xmake-io/xmake/issues/854 ! 关于这块详情,可以参考下:https://github.com/xmake-io/xmake/issues/835 改进protobuf规则支持 xmake内置的protobuf.cpp编译规则针对* 关于这块的详情,见:https://github.com/xmake-io/xmake/issues/828 更新内容 新特性 添加xmake show -l envs去显示xmake内置的环境变量列表

    19330

    xmake从入门到精通9:交叉编译详解

    除了win, linux, macOS平台,以及android, ios等移动端平台的内建构建支持,xmake也支持对各种其他工具链的交叉编译支持,本文我们将会详细介绍下如何使用xmake进行交叉编译。 根目录就可以编译了,例如: $ xmake f -p cross --sdk=/home/toolchains_sdkdir $ xmake 其中,-p cross用于指定当前的平台是交叉编译平台,- $ xmake f -p mingw $ xmake -v configure { ld = /usr/local/opt/mingw-w64/bin/x86_64-w64-mingw32-g+ $ xmake g --mingw=/home/mingwsdk $ xmake f -p mingw $ xmake 我们通过xmake g/global命令设置--mingw根目录到全局配置后,之后每次编译和切换编译平台 $ xmake f -p linux --sdk=/usr/local/arm-xxx-gcc/ $ xmake 只要设置了--sdk=等参数,就会启用linux平台的交叉编译模式。

    48130

    相关产品

    • 云服务器

      云服务器

      云端获取和启用云服务器,并实时扩展或缩减云计算资源。云服务器 支持按实际使用的资源计费,可以为您节约计算成本。 腾讯云服务器(CVM)为您提供安全可靠的弹性云计算服务。只需几分钟,您就可以在云端获取和启用云服务器,并实时扩展或缩减云计算资源。云服务器 支持按实际使用的资源计费,可以为您节约计算成本。

    相关资讯

    热门标签

    扫码关注云+社区

    领取腾讯云代金券