gpt4 book ai didi

c - 如果未定义函数,C 中是否有办法让编译器/链接器给出错误?

转载 作者:行者123 更新时间:2023-12-02 03:14:37 25 4
gpt4 key购买 nike

在我的例子中,我使用 dlfcn.h (linux) 在 C 中编写了一个简单的插件系统。插件与主程序分开编译,并生成一堆 .so 文件。

为了让主程序正确调用插件,必须在插件中定义某些函数。理想情况下,我希望每个插件都包含一个 .h 文件或以某种方式说明有效插件必须具有哪些功能的文件,如果这些功能未在插件中定义,我希望插件编译失败。

最佳答案

我认为您不能强制在编译时定义函数。但是,如果您使用 gcc 工具链,则可以在链接时使用 --undefined 标志来强制定义一个符号。

ld --undefined foo

会将 foo 视为一个 undefined symbol ,必须定义该符号才能使链接器成功。

关于c - 如果未定义函数,C 中是否有办法让编译器/链接器给出错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37826721/

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