jjzjj

XMake学习笔记(1):Windows(MSYS2)下MinGW-w64环境搭建和XMake安装

以前写的C++基本都是CwithSTL,大多是面向过程的算法题,或者比较小的项目,然后经常报各种编译错误(对编译原理不熟),经常把人搞到崩溃,搞不懂构建、链接之类的东西。现在开始记录一下XMake的学习笔记,记录一些学习过程中踩的坑,在这篇文章,你将学习到Windows下利用MSYS2进行Mingw-w64环境搭建和XMake安装,并用Xmake构建一个项目,编译一个HelloWorld程序。?作者:Eriktse?简介:19岁,211计算机在读,现役ACM银牌选手?力争以通俗易懂的方式讲解算法!❤️欢迎关注我,一起交流C++/Python算法。(优质好文持续更新中……)??阅读原文获得更好阅

Xmake v2.8.5 发布,支持链接排序和单元测试

Xmake是一个基于Lua的轻量级跨平台构建工具。它非常的轻量,没有任何依赖,因为它内置了Lua运行时。它使用xmake.lua维护项目构建,相比makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。我们能够使用它像Make/Ninja那样可以直接编译项目,也可以像CMake/Meson那样生成工程文件,另外它还有内置的包管理系统来帮助用户解决C/C++依赖库的集成使用问题。目前,Xmake主要用于C/C++项目的构建,但是同时也支持其他native语言的构建,可以实现跟C/C++进行混合编译,

利用xmake在c++项目中编译与调用webassmebly

最近在尝试用webassembly替代lua作为c++程序的脚本。刚好xmake也支持了webassembly的编译。下面是踩坑记录。项目需要两个target:一个c++项目、一个webassembly项目。需要自动编译webassembly,并且c++项目依赖webassembly的编译结果。下面是我的测试项目的xmake配置:add_requires("conan::wasmer/2.3.0",{alias="wasmer",configs={vs_runtime="MT"}})target("scripts")set_plat("wasm")set_toolchains("emcc")s

利用xmake在c++项目中编译与调用webassmebly

最近在尝试用webassembly替代lua作为c++程序的脚本。刚好xmake也支持了webassembly的编译。下面是踩坑记录。项目需要两个target:一个c++项目、一个webassembly项目。需要自动编译webassembly,并且c++项目依赖webassembly的编译结果。下面是我的测试项目的xmake配置:add_requires("conan::wasmer/2.3.0",{alias="wasmer",configs={vs_runtime="MT"}})target("scripts")set_plat("wasm")set_toolchains("emcc")s

记录一次Win下的C++环境搭建(VSCode+MinGW+Clangd+xmake)

这套环境是VSCode+MinGW(MSYS2)+Clangd+Xmake的配置。MinGW网上很多教程引导去的MinGW-w64gcc版本只更新到了8.1.0就停更了,而实际中gcc版本已经到达12了,因此我们使用MSYS2去安装GCC。首先使用scoop安装msys2(在mainbucket中就有):scoopinstallmsys2终端中输入msys2进入环境,下载minGW:pacman-Smingw-w64-x86_64-toolchain下面会提示选择哪些工具,如果不是硬盘空间实在有限的话,直接回车默认安装全部即可。随后找到minGW的bin目录(这里推荐一手Listary,直接搜

记录一次Win下的C++环境搭建(VSCode+MinGW+Clangd+xmake)

这套环境是VSCode+MinGW(MSYS2)+Clangd+Xmake的配置。MinGW网上很多教程引导去的MinGW-w64gcc版本只更新到了8.1.0就停更了,而实际中gcc版本已经到达12了,因此我们使用MSYS2去安装GCC。首先使用scoop安装msys2(在mainbucket中就有):scoopinstallmsys2终端中输入msys2进入环境,下载minGW:pacman-Smingw-w64-x86_64-toolchain下面会提示选择哪些工具,如果不是硬盘空间实在有限的话,直接回车默认安装全部即可。随后找到minGW的bin目录(这里推荐一手Listary,直接搜

xmake自动构建工具

一前言autotool简化了Makefile的构建难度,让我们方便的生成复杂项目的Makefile;CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake,可以输出不同IDE的工程文件如下:image.png说实话,autotool和CMake都比较复杂,autotool需要写Make.am,CMake要写CMakeLists都有自己语法,还要仔细看说明,了解语法,基本上不常用,过几天还要重新开。xmake是一个基于Lua的轻量级跨平

xmake自动构建工具

一前言autotool简化了Makefile的构建难度,让我们方便的生成复杂项目的Makefile;CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake,可以输出不同IDE的工程文件如下:image.png说实话,autotool和CMake都比较复杂,autotool需要写Make.am,CMake要写CMakeLists都有自己语法,还要仔细看说明,了解语法,基本上不常用,过几天还要重新开。xmake是一个基于Lua的轻量级跨平