gpt4 book ai didi

c - 从 KVM_main.c 导出函数时出现错误 : implicit declaration of function

转载 作者:太空宇宙 更新时间:2023-11-04 03:46:18 25 4
gpt4 key购买 nike

我正在尝试从 KVM_main.c 中导出一个函数。我可以成功编译内核,但是当我调用该函数时出现错误,使我相信它没有正确导出。下面是我用来导出它的代码。

MODULE_AUTHOR("Qumranet");
MODULE_LICENSE("GPL");
LIST_HEAD(vm_list);
.
.<other code>
.
struct list_head * kvm_get_vm_list(void)
{
return &vm_list;
}
EXPORT_SYMBOL_GPL(kvm_get_vm_list);

我相信我导出它是正确的,因为我之前使用过它并且能够导出它。无论出于何种原因,这次我都无法正常工作。有没有一种方法可以检查该文件的导出以查看它是否正确导出?我必须导入一些东西才能访问它吗?下面是我试图访问它的代码。

lvm_list = kvm_get_vm_list();

下面是我遇到的错误。

error: implicit declaration of function ‘kvm_get_vm_list’ [-Werror=implicit-function-declaration]

最佳答案

此函数的原型(prototype)也需要添加到相应的头文件中。

struct list_head * kvm_get_vm_list(void);

您遇到的是编译器错误,这意味着您的 C 文件不知道相关函数的存在。

EXPORT_SYMBOL 宏仅指定要导出的符号,因此可以链接

关于c - 从 KVM_main.c 导出函数时出现错误 : implicit declaration of function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24153615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com