VSCode, Clangd, clang-tidy, Cuda

2023-10-31 02:04
文章标签 vscode cuda clang tidy clangd

本文主要是介绍VSCode, Clangd, clang-tidy, Cuda,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

settings.json

"clangd.arguments": ["--background-index","--compile-commands-dir=build", //compile_command.json相对路径,cmake默认生成在build,自行配置// "-j=16","--all-scopes-completion","--completion-style=detailed","--header-insertion=iwyu","--pch-storage=memory","--cross-file-rename","--enable-config","--fallback-style=WebKit","--pretty","--clang-tidy",// 网上别人配置clang++,但我这边windows、linux实测不加这行也没啥问题,可能mac可能需要另外加"--query-driver=clang++",],

~/.config/clangd/config.yaml
clangd自定义包含路径-I

CompileFlags:Add: [-std=c++14, -Wno-documentation, -Wno-missing-prototypes, -I/home/chrisliu/anaconda3/envs/gaussian_splatting/include/python3.7, -I/home/chrisliu/anaconda3/envs/gaussian_splatting/lib/python3.7/site-packages/torch/include, -I/home/chrisliu/anaconda3/envs/gaussian_splatting/lib/python3.7/site-packages/torch/include/torch/csrc/api/include]
Diagnostics:ClangTidy:Add: [# https://blog.csdn.net/ypshowm/article/details/100040729# https://clang.llvm.org/extra/clang-tidy/checks/list.html# https://youtrack.jetbrains.com/articles/CPP-A-90276519boost-*, # 检测boost库API使用问题# cppcoreguidelines-*, # 检测是否违反cpp-core-guidelinescppcoreguidelines-interfaces-global-init,cppcoreguidelines-narrowing-conversions,cppcoreguidelines-pro-type-member-init,cppcoreguidelines-pro-type-static-cast-downcast,cppcoreguidelines-slicing,# google-*, # 检测是否违反google code stylegoogle-default-arguments,google-explicit-constructor,google-runtime-operator,performance-*,# bugprone-*,bugprone-argument-comment,bugprone-assert-side-effect,bugprone-bad-signal-to-kill-thread,bugprone-branch-clone,bugprone-copy-constructor-init,bugprone-dangling-handle,bugprone-dynamic-static-initializers,bugprone-fold-init-type,bugprone-forward-declaration-namespace,bugprone-forwarding-reference-overload,bugprone-inaccurate-erase,bugprone-incorrect-roundings,bugprone-integer-division,bugprone-lambda-function-name,bugprone-macro-parentheses,bugprone-macro-repeated-side-effects,bugprone-misplaced-operator-in-strlen-in-alloc,bugprone-misplaced-pointer-arithmetic-in-alloc,bugprone-misplaced-widening-cast,bugprone-move-forwarding-reference,bugprone-multiple-statement-macro,bugprone-narrowing-conversions,bugprone-no-escape,bugprone-not-null-terminated-result,bugprone-parent-virtual-call,bugprone-posix-return,bugprone-reserved-identifier,bugprone-sizeof-container,bugprone-sizeof-expression,bugprone-string-constructor,bugprone-string-integer-assignment,bugprone-string-literal-with-embedded-nul,bugprone-suspicious-enum-usage,bugprone-suspicious-include,bugprone-suspicious-memory-comparison,bugprone-suspicious-memset-usage,bugprone-suspicious-missing-comma,bugprone-suspicious-semicolon,bugprone-suspicious-string-compare,bugprone-swapped-arguments,bugprone-terminating-continue,bugprone-throw-keyword-missing,bugprone-too-small-loop-variable,bugprone-undefined-memory-manipulation,bugprone-undelegated-constructor,bugprone-unhandled-self-assignment,bugprone-unused-raii,bugprone-unused-return-value,bugprone-use-after-move,bugprone-virtual-near-miss,# modernize-*,modernize-avoid-bind,modernize-concat-nested-namespaces,modernize-deprecated-headers,modernize-deprecated-ios-base-aliases,modernize-loop-convert,modernize-make-shared,modernize-make-unique,modernize-pass-by-value,modernize-raw-string-literal,modernize-redundant-void-arg,modernize-replace-auto-ptr,modernize-replace-disallow-copy-and-assign-macro,modernize-replace-random-shuffle,modernize-return-braced-init-list,modernize-shrink-to-fit,modernize-unary-static-assert,modernize-use-auto,modernize-use-bool-literals,modernize-use-emplace,modernize-use-equals-default,modernize-use-equals-delete,modernize-use-nodiscard,modernize-use-noexcept,modernize-use-nullptr,modernize-use-override,modernize-use-transparent-functors,modernize-use-uncaught-exceptions,clang-analyzer-*,# cert-*, # 检测CERT的代码规范# cert-dcl03-c,# cert-dcl21-cpp,# cert-dcl58-cpp,# cert-err34-c,# cert-err52-cpp,# cert-err58-cpp,# cert-err60-cpp,# cert-oop54-cpp,# cert-str34-c,# readability-*,# readability-identifier*,readability-avoid-const-params-in-decls,readability-const-return-type,readability-container-size-empty,readability-convert-member-functions-to-static,readability-delete-null-pointer,readability-inconsistent-declaration-parameter-name,readability-make-member-function-const,readability-misleading-indentation,readability-misplaced-array-index,readability-non-const-parameter,readability-redundant-control-flow,readability-redundant-declaration,readability-redundant-function-ptr-dereference,readability-redundant-smartptr-get,readability-redundant-string-cstr,readability-redundant-string-init,readability-simplify-subscript-expr,readability-static-accessed-through-instance,readability-static-definition-in-anonymous-namespace,readability-string-compare,readability-uniqueptr-delete-release,readability-use-anyofallof,# misc-*,misc-misplaced-const,misc-new-delete-overloads,misc-no-recursion,misc-non-copyable-objects,misc-redundant-expression,misc-static-assert,misc-throw-by-value-catch-by-reference,misc-unconventional-assign-operator,misc-uniqueptr-reset-release,mpi-*,# llvm-header-guard,# llvm-include-order,]# CheckOptions:#   readability-identifier-naming.VariableCase: camelBack#   readability-identifier-naming.GlobalVariableCase: CamelCase#   readability-identifier-naming.GlobalVariablePrefix: g#   readability-identifier-naming.MemberPrefix: m#   readability-identifier-naming.MemberCase: CamelCase#   readability-identifier-naming.ClassMemberPrefix: m#   readability-identifier-naming.ClassMemberCase: CamelCase#   readability-identifier-naming.EnumCase: UPPER_CASE#   readability-identifier-naming.EnumConstantCase: UPPER_CASE#   readability-identifier-naming.MacroDefinitionCase: UPPER_CASE#   readability-identifier-naming.ClassCase: CamelCase#   readability-identifier-naming.StructCase: lower_case#   readability-identifier-naming.FunctionCase: lower_case#   readability-identifier-naming.ClassMethodCase: camelBack#   readability-identifier-naming.MethodCase: camelBack#   readability-identifier-naming.ConstantCase: CamelCase#   readability-identifier-naming.ConstantPrefix: k

这篇关于VSCode, Clangd, clang-tidy, Cuda的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/312067

相关文章

VScode连接远程Linux服务器环境配置图文教程

《VScode连接远程Linux服务器环境配置图文教程》:本文主要介绍如何安装和配置VSCode,包括安装步骤、环境配置(如汉化包、远程SSH连接)、语言包安装(如C/C++插件)等,文中给出了详... 目录一、安装vscode二、环境配置1.中文汉化包2.安装remote-ssh,用于远程连接2.1安装2

vscode保存代码时自动eslint格式化图文教程

《vscode保存代码时自动eslint格式化图文教程》:本文主要介绍vscode保存代码时自动eslint格式化的相关资料,包括打开设置文件并复制特定内容,文中通过代码介绍的非常详细,需要的朋友... 目录1、点击设置2、选择远程--->点击右上角打开设置3、会弹出settings.json文件,将以下内

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

vscode中文乱码问题,注释,终端,调试乱码一劳永逸版

忘记咋回事突然出现了乱码问题,很多方法都试了,注释乱码解决了,终端又乱码,调试窗口也乱码,最后经过本人不懈努力,终于全部解决了,现在分享给大家我的方法。 乱码的原因是各个地方用的编码格式不统一,所以把他们设成统一的utf8. 1.电脑的编码格式 开始-设置-时间和语言-语言和区域 管理语言设置-更改系统区域设置-勾选Bata版:使用utf8-确定-然后按指示重启 2.vscode

vscode中使用go环境配置细节

1、在docker容器中下载了go的sdk 2、在/etc/profile.d/go.sh里填入如下内容: #!/bin/bashexport GOROOT=/home/ud_dev/goexport PATH=$GOROOT/bin:$PATH  3、设置go env go env -w GOPROXY=https://goproxy.cn,directgo env -w GO

PyInstaller问题解决 onnxruntime-gpu 使用GPU和CUDA加速模型推理

前言 在模型推理时,需要使用GPU加速,相关的CUDA和CUDNN安装好后,通过onnxruntime-gpu实现。 直接运行python程序是正常使用GPU的,如果使用PyInstaller将.py文件打包为.exe,发现只能使用CPU推理了。 本文分析这个问题和提供解决方案,供大家参考。 问题分析——找不到ONNX Runtime GPU 动态库 首先直接运行python程序

Cannot read property ‘length‘ of null while opening vscode terminal

同一问题地址:Cannot read property ‘length’ of null while opening vscode terminal 问题描述 One day, 我在ubuntu 18.04下用vscode打开一个项目,并想和往常一样在vscode使用终端,发现报错Cannot read property 'length' of null。 解决 打开setting.jso

Anconda环境下Vscode安装Python

这里使用的操作系统为win7/10,安装环境是使用Anconda搭建Python环境,然后在Vscode编辑器中安装Python插件,最终能够在Vscode环境下使用Python。 一、Anconda软件的安装 Anaconda is a completely free Python distribution (including for commercial use and redis

WIN11 ESP32 IDF + VSCODE 环境搭建[教程向]

前言 目录 前言 安装ESP32-IDF VSCODE插件安装 编译测试 很多时候我们想学习一门新的技能,需要使用全新的开发环境,很多时候我们会在安装环境这个环节卡住很久,这里简单介绍一下ESP32+VSCODE环境搭建。 安装ESP32-IDF https://dl.espressif.cn/dl/esp-idf/?idf=4.4 直接复制上面链接,进入idf下载界面。

vscode从本地安装插件

1. 打开VSCode。 2. 点击左侧菜单中的“扩展”(或按Ctrl+Shift+X)。 3. 点击“更多操作”(三个点)> “从VSIX安装”。 4. 选择下载的.vsix文件。 5. 点击“安装”即可安装插件。