source insight4.0 内核源码 __read_mostly 不识别问题解决
0.引用source insight c/c 宏定义无法识别_source insights代码关键字不识别-CSDN博客Token Macro Filessource insight 4.0中宏定义做为函数返回值时函数识别错误_sourceinsight 4.0无法识别func函数-CSDN博客1.解决问题默认SourceInsight4.0 不识别内核源码里 __read_mostly这样使用 __read_mostly 修饰的内核源码变量名可能不能被 SI4.0 正确的分析识别和跳转。询问 DeepSeek根据DeepSeek的提示和网上一些博客的文章说的解决方法都是说修改 SI4.0 的 C/C语言默认的 C.tom 文件在 C.tom 添加一个自己的宏定义。但是如何在 C.tom 里添加自己的宏定义都说的模模糊糊或者说是直接添加到 C.tom 文件的结尾的位置就可以但是我实际测试下来直接在 C.tom 文件的结尾添加上 __read_mostly 然后重启 SourceInsight4.0并且根据博客指示重新 rebuild 整个 project 工程SI4.0还是没有正确的识别 __read_mostly。1.1 尝试别人方案按照DeepSeek的提示和几个博客说的在 C.tom 文件的结尾直接添加上一行 ‘__read_mostly’ 然后重启 SourceInsight4.0并且根据博客指示重新 rebuild 整个 project 工程SI4.0还是没有正确的识别 __read_mostly。1.2 关键线索 C.tom 文件参数有分区继续搜索解决方案然后这个博客给我很大的提示source insight c/c 宏定义无法识别_source insights代码关键字不识别-CSDN博客这个博客说在 C.tom 里添加宏定义的时不是随便的添加到 C.tom 文件结尾位置的C.tom 文件实际上由一个结构的分为几个参数分片区如果需要添加宏定义到 C.tom 文件需要把宏名字写到 C.tom 的 Misc 分区。这个提示非常的关键它说明向C.tom文件添加 C/C 宏定义并不是随意的添加的C.tom文件结尾位置就可以的它需要被添加到 C.tom 文件里正确的参数分区里。我根据这个博客的提示在 SI4.0 的安装目录下 C:\Program Files (x86)\Source Insight 4.0 下修改 C.tom 文件在文件的 Misc 分区里加上了我需要的宏定义 __read_mostly。然后重启 SourceInsight4.0后SI4.0 就可以正确的识别出源码里的 __read_mostly 修饰的变量名了。1.3 进一步优化在上面第二步从别人博客获得关键提示里知道 C.tom 文件的参数是有分区的只有把宏的定义放到 C.tom 的 Misc 分区里重启SourceInsight4.0 后宏才能生效。直接任意的把宏名字放到 C.tom 文件的结尾经过我的测试是不能生效宏定义的。有了上面提示我分析了下 C.tom 文件的参数分区然后发现把 __read_mostly 作为宏声明放到 C.tom 的 Misc 分区里可以解决部分问题。但我发现 C.tom 文件有一个参数分区是定义 C/C 语言的 key 关键字把 __read_mostly 放到 C.tom 分区的 key 关键字分区里让SourceInsight4.0 把 __read_mostly 当成 C/C 语言的 key 关键字是一个更好的注意。把 __read_mostly 放到了 C.tom 文件的 Keywords 参数分区保存 C.tom 文件然后重启SourceInsight4.0对 C.tom 的修改生效了 SI4.0 正确解析了 __read_mostly 修饰的变量名并且效果更好。2.总结SourceInsight4.0 的 C/C 语言配置文件 C.tom 是一个格式化的有参数分区的文件如果要添加宏定义到 C.tom 文件不是随意的添加到 C.tom 文件的结尾就生效的需要添加到 C.tom 文件的正确的参数分区。如果要添加一个宏到 C.tom就把自己的的宏加到 C.tom 的 :Misc 参数分区加上一行。如果要添加一个自己的 C/C 语言关键字就把自己的关键字加到 C.tom 的 :Keywords 参数分区加上一行。对 SI4.0 的安装目录下 C:\Program Files (x86)\Source Insight 4.0 下 C.tom 的修改经过我的测试发现会被自动拷贝到用户的 C:\userData\xxx\Documents\Source Insight 4.0\ 目录下 C.tom。SI4.0 好像会自动同步这两个文件用安装目录下的 C.tom 覆盖用户 C:\userData 目录下的 C.tom。所以直接修改SI4.0 安装目录下的 C.tom 就可以了。

相关新闻

30行代码实现AI Agent核心:任务分解与工具调用机制详解

30行代码实现AI Agent核心:任务分解与工具调用机制详解

1. 先搞清楚Agent核心到底解决什么问题Agent的核心不是让AI变得更聪明,而是让AI能够按步骤使用工具完成任务。很多人一听到Agent就想到复杂的框架和算法,但实际最核心的机制就是:AI分析任务→选择工具→执行工具→整合结果→继续下一步。我用…

2026/11/4 15:23:57 阅读更多 →
gdb 常用指令

gdb 常用指令

gdb 常用指令 1. 功能描述 GDB(GNU Debugger)是 Linux 下最常用的 C/C 调试器,支持断点调试、变量查看、调用栈追踪、内存检查、多线程调试、远程调试和 Core Dump 分析。 1.1 核心能力能力说明断点调试行断点、函数断点、条件断点、临时断点…

2026/10/31 8:05:30 阅读更多 →
APP性能优化:HTTP DNS技术解析与美图实践

APP性能优化:HTTP DNS技术解析与美图实践

1. 为什么APP需要DNS优化?移动互联网时代,用户体验已经成为决定APP成败的关键因素。你可能不知道,用户在打开APP时,平均有15-20%的时间花费在DNS解析上。这个看似微小的环节,却直接影响着用户的第一印象。DNS解析就像是…

2026/11/2 18:21:47 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/4 1:35:24 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/5 1:08:50 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/3 11:35:49 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/4 6:23:50 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/5 0:54:28 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/4 19:19:54 阅读更多 →

日新闻

周新闻

月新闻