【Xmake】C++工程笔记

1 现用模板

Windows下学习OpenGL。

add_rules("mode.debug", "mode.release")

add_requires("glfw", "glew")
set_languages("c11", "c++14")

target("lighting-01")
    set_kind("binary")
    set_basename("lighting-01_$(mode)_$(arch)")		-- 设置目标名字(不包括前后缀)
    add_files("src/*.cpp")							-- 添加源码
    add_includedirs("include", "lib/include")		-- 添加头文件目录
    add_packages("glfw","glew")						-- 添加需要的包
    set_rundir("$(projectdir)")						-- 运行时目录

目录结构:
目录结构

2 VSC代码补全(intellisense)

2.1 命令行

参考xmake github issues支持为vscode-cpptools提供intellisense配置信息
先在工程根目录终端输入xmake project -k compile_commands,根目录会生成compile_commands.json文件

在vsc使用快捷键ctrl + shift + p唤出命令面板,输入C\C++,点击一次Edit Configurations(UI)

vsc会在.vscode目录自动生成c_cpp_properties.json文件

命令面板
把之前生成的compile_commands.json文件移动到.vscode文件夹
在这里插入图片描述
c_cpp_properties.json文件内加入配置:

"configurations": [
    {
	    ......
      "compileCommands": ".vscode/compile_commands.json",
    }
  ],

我电脑环境下的完整版c_cpp_properties.json

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**",
                "${vcpkgRoot}/x64-windows/include",
                "${vcpkgRoot}/x64-windows-static/include",
                "${vcpkgRoot}/x86-windows/include",
                "${vcpkgRoot}/x86-windows-static/include"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "windowsSdkVersion": "10.0.19041.0",
            "compilerPath": "C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe",
            "cStandard": "c17",
            "intelliSenseMode": "windows-msvc-x64",
            "compileCommands": ".vscode/compile_commands.json"
        }
    ],
    "version": 4
}

1.2 若使用xmake的vscode插件(推荐)

插件扩展设置中,设置如下如图,放到指定位置。
在这里插入图片描述
相同CMake插件也是可以的,这里记录一下。
在这里插入图片描述
配置clangd插件,自动插入头文件,插件真把握不住。
在这里插入图片描述

2 Qt

2.1 Windows下qDebug输出到控制台

if is_plat("windows") then
    -- 设置子系统为控制台
    add_ldflags("-subsystem:console")
    -- 链接系统库以支持控制台
    add_syslinks("kernel32", "user32")
end 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值