out/msm-kernel-gen3auto-gki/gki_kernel/dist/vmlinux.symvers是怎么生成的
时间: 2023-12-18 20:05:35 浏览: 198
内核地址的确定. 如何生成vmlinux
4星 · 用户满意度95%
`vmlinux.symvers`是Linux内核编译过程中生成的一个文件,其中包含了内核的符号表信息。这些符号表信息是编译内核模块时所必须的,因为内核模块需要链接到内核中的某些函数和变量。
具体来说,`vmlinux.symvers`文件中包含了内核中所有导出的符号(exported symbols)的版本号和类型信息。这些符号通常是由内核中的函数、变量或者宏定义导出的。内核模块在编译时会检查它所依赖的内核符号是否存在,并且版本号和类型是否匹配。如果不匹配,编译会失败。
`vmlinux.symvers`文件的生成过程一般是由内核Makefile中的`CONFIG_MODVERSIONS`选项控制的。当这个选项被打开时,内核会在编译时生成`Module.symvers`文件,其中包含了所有导出符号的版本号和类型信息。然后,在链接内核模块时,会使用这个文件来检查符号版本和类型的匹配情况,并且生成`vmlinux.symvers`文件。
需要注意的是,`vmlinux.symvers`文件并不是内核的一部分,它只是用于内核模块的编译和链接。如果你没有编译内核模块的需求,那么这个文件对你来说就没有什么用处了。
阅读全文