当前位置: 首页 > wzjs >正文

wiki网站开发工具阿里巴巴对外做网站吗

wiki网站开发工具,阿里巴巴对外做网站吗,央企做的好的网站,网站建设服务套餐导航 准备工作文件compile_commands.json如何生成cmake生成bear生成其他观察和理解 clangd常见错误以及应对方法.clangd配置文件 clangd实时错误输出clangd和vscode配合之下的bug 准备工作 内核源码linux-imxpython3下载scripts/clang-tools/gen_compile_commands.pyvscode和c…

导航

  • 准备工作
  • 文件compile_commands.json
    • 如何生成
      • cmake生成
      • bear生成
      • 其他
      • 观察和理解
    • clangd常见错误以及应对方法
    • .clangd配置文件
  • clangd实时错误输出
  • clangd和vscode配合之下的bug

准备工作

  1. 内核源码linux-imx
  2. python3
  3. 下载scripts/clang-tools/gen_compile_commands.py
  4. vscode和clangd插件,把cpptool插件禁止。

gen_compile_commands.py: 通过*.cmd来生成compile_commands.json

文件compile_commands.json

如何生成

cmake生成

cmake支持compile_commands.json生成。
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON …
或者:set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

bear生成

apt install bear
bear -- make -j8

其他

也可以用其他方式来生成如内核可以用python程序:
scripts/clang-tools/gen_compile_commands.py

观察和理解

观察compile_commands.json中的command字段:其中包含-I/usr/include这样的编译选项,clangd能通过command字段来提取头文件。

  {"command": "/path/aarch64-poky-linux-gcc -Wl -mabi=lp64 --isystem rc-anysee.c","directory": "/mnt/extdisk3/imx8_sdk/kernel/4.14.98/linux-imx","file": "/mnt/extdisk3/imx8_sdk/kernel/4.14.98/linux-imx/drivers/media/rc/keymaps/rc-anysee.c"},

clangd常见错误以及应对方法

  1. –query-driver错误
    观察compile_commands.json中的command字段:其中包含-I/usr/include这样的编译选项,clangd能通过command命令来提取头文件。
    错误:System include extraction: driver clang not found in PATH解决:想办法让compile_commands.json中的command为 绝对路径。
    

Q: --query-driver什么时候可以不配置?
A: 只要保证compile_commands.json的command为绝对路径

.clangd配置文件

参考: .clangd配置文件简介
本人的理解:当compile_command.json

  1. 如果clangd不能识别gcc中的一些参数,可以进行配置
    如下错误: clangd无法识别gcc的参数lp64

E[14:05:24.926] Could not build a preamble for file /linux-imx/drivers/pci/dwc/pci-imx6.c version 1: CreateTargetInfo() return null
E[14:05:24.926]   error: unknown target ABI 'lp64'
E[14:05:24.927] Failed to prepare a compiler instance: unknown target ABI 'lp64'

错误原因:clangd无法识别的编译参数-mabi=lp64(gcc包含-mabi=lp64的参数)。

解决: 编辑.clangd删除,当然也可以Add参数

CompileFlags:Remove: [-mabi=lp64]

clangd实时错误输出

如果clangd配置有问题:当你的鼠标放在函数上,进行导航时,将会出现如下的错误, 这些错误是实时生成的

[Error - 2:34:45 PM] Request textDocument/definition failed.
[object Object]
[Error - 2:34:45 PM] Request textDocument/definition failed.
[object Object]
[Error - 2:34:45 PM] Request textDocument/hover failed.
[object Object]
[Error - 2:36:30 PM] Request textDocument/hover failed.
[object Object]
[Error - 2:36:30 PM] Request textDocument/definition failed.
[object Object]
[Error - 2:36:30 PM] Request textDocument/definition failed.
[object Object]
[Error - 2:36:30 PM] Request textDocument/hover failed.
[object Object]

clangd和vscode配合之下的bug

**前提:**所有的配置都正确,所有的函数和变量都能正确的导航。
Bug:函数跳转到另一个文件时,会出现下面错误。

[Error - 2:48:58 PM] Request textDocument/codeAction failed.
[object Object]
[Error - 2:48:58 PM] Request textDocument/documentHighlight failed.
[object Object]
http://www.dtcms.com/wzjs/548114.html

相关文章:

  • 酒店网站建设报价详情厦门建设网官方网站
  • 株洲建设公司网站h5网页模板下载
  • 中国产品网免费网站影响网站收录的因素
  • 北京网站建设公司新闻云虚拟机
  • 网站建设全部流程图江门鹤山最新消息新闻
  • 做网站合同封面做装修公司网站费用
  • 做滤芯的网站重庆网站建设 菠拿拿
  • 全国各地网站开发外包设计说明英文翻译
  • 关于网站设计的书籍保定网站制作哪家好建设
  • 怎么做网站后门网站轮播图怎么保存
  • 如何制作淘宝客网站wordpress免费问答模板
  • 苏州网站建设排行网站建设站长相关专业
  • 网站常用字体免费云服务器试用7天
  • 台州市临海建设局网站安徽工业大学两学一做网站
  • 官方网站怎么查询网站被人做跳转了
  • ajaxjsp网站开发从入门到精通可以做网站的app
  • 做电商网站外包建筑专业网站有哪些
  • 规划管理部门的网站建设哈尔滨网站建设的公司
  • wordpress网站 添加微信做家装的设计公司网站
  • 长沙网站关键词优化视觉创意网站
  • 公司网站建设及安全解决方案门户网站的主要特点
  • 建设河南网站网页设计实验报告单模板
  • 网站建设规划书有哪些内容澄迈网站建设
  • 大连 模板网站外贸公司怎么开
  • 合肥做网站好的公司哪家好注册商标查询官网入口
  • 广州微信网站设计制作怎么介绍自己的网页
  • 怎么用服务器ip做网站拼多多货源一件代发从哪里找
  • 论文网站建设个人网站用什么域名好
  • 做网站用Linux还是win做特卖网站有哪些
  • 网站上的办公网站怎么做群晖Wordpress80端口