C++ xmake构建

简介: C++ xmake构建

一、xmake.lua

--xmake.lua
set_project("XXX")
add_rules("mode.debug", "mode.release")
set_config("arch", "x64")
if is_plat("windows") then 
    -- the release mode
    if is_mode("release") then
        add_cxflags("-MD") 
    -- the debug mode
    elseif is_mode("debug") then
        add_cxflags("-MDd") 
    end
end
add_packagedirs("./thirdparty")
target("XXX")
    add_rules("qt.application")
    --头文件路径
    add_includedirs("./app")
    --ui文件
    add_files("./app/*.ui")
    -- metadata head files
    add_files("./app/*.h")
    -- qrc files
    add_files("./app/*.qrc")
    -- cpp files
    add_files("./app/*.cpp")
    add_ldflags("/MANIFEST", "/MANIFESTUAC:\"level='requireAdministrator' uiAccess='false'\"", {force = true})
    add_frameworks("QtCore", "QtGui", "QtWidgets", "QtSql", "QtMultimedia", "QtMultimediaWidgets","QtNetwork")

这是一个名为 “XXX” 的项目的 Lua 脚本。该脚本设置了项目名称,添加了用于在调试和发布模式下构建的规则,并将架构配置设置为 x64。

如果平台是 Windows,脚本会为发布模式设置 C++ 编译器标志为 “-MD”,为调试模式设置为 “-MDd”。

然后,脚本添加第三方库的软件包目录,并定义了一个名为 “XXX” 的目标。该目标使用 “qt.application” 规则,并包括多个头文件目录。它还添加了 UI 文件、元数据头文件和 qrc 文件。

最后,脚本添加 Qt 库。

二、xmake常用语句

xmake    编译
xmake f -c   清缓存
xmake clean  
xmake project -k vsxmake -m "debug,release"   生成vs工程

推荐一个零声学院项目课,个人觉得老师讲得不错,分享给大家:

零声白金学习卡(含基础架构/高性能存储/golang云原生/音视频/Linux内核)

https://xxetb.xet.tech/s/VsFMs


目录
打赏
0
0
0
0
8
分享
相关文章
掌握Qt和C++:构建你的第一个P2P应用程序
掌握Qt和C++:构建你的第一个P2P应用程序
354 3
【Conan 入门教程 】使用Conan 2.X和Autotools高效构建C/C++项目
【Conan 入门教程 】使用Conan 2.X和Autotools高效构建C/C++项目
420 1
C++程序设计基础:构建稳固的编程基石
C++程序设计基础:构建稳固的编程基石
65 1
深入探索 “JSON for Modern C++“:安装、构建与应用
深入探索 “JSON for Modern C++“:安装、构建与应用
228 0
CMake构建大型C/C++项目:跨平台设计与高级应用(二)
CMake构建大型C/C++项目:跨平台设计与高级应用
307 0
使用 OpenCV4 和 C++ 构建计算机视觉项目:1~5
使用 OpenCV4 和 C++ 构建计算机视觉项目:1~5
237 0
【CMake】CMake构建C++代码(一)
【CMake】CMake构建C++代码(一)
C++构建 GAN 模型:生成器与判别器平衡训练的关键秘籍
生成对抗网络(GAN)是AI领域的明星,尤其在C++中构建时,平衡生成器与判别器的训练尤为关键。本文探讨了GAN的基本架构、训练原理及平衡训练的重要性,提出了包括合理初始化、精心设计损失函数、动态调整学习率、引入正则化技术和监测训练过程在内的五大策略,旨在确保GAN模型在C++环境下的高效、稳定训练,以生成高质量的结果,推动AI技术的发展。
111 10
HTML+JavaScript构建C++类代码一键转换MASM32代码平台
HTML+JavaScript构建C++类代码一键转换MASM32代码平台
|
6月前
|
C++
HTML+JavaScript构建一个将C/C++定义的ANSI字符串转换为MASM32定义的DWUniCode字符串的工具
HTML+JavaScript构建一个将C/C++定义的ANSI字符串转换为MASM32定义的DWUniCode字符串的工具