作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的例子中,我使用 dlfcn.h (linux) 在 C 中编写了一个简单的插件系统。插件与主程序分开编译,并生成一堆 .so 文件。
为了让主程序正确调用插件,必须在插件中定义某些函数。理想情况下,我希望每个插件都包含一个 .h 文件或以某种方式说明有效插件必须具有哪些功能的文件,如果这些功能未在插件中定义,我希望插件编译失败。
最佳答案
我认为您不能强制在编译时定义函数。但是,如果您使用 gcc 工具链,则可以在链接时使用 --undefined
标志来强制定义一个符号。
ld --undefined foo
会将 foo
视为一个 undefined symbol ,必须定义该符号才能使链接器成功。
关于c - 如果未定义函数,C 中是否有办法让编译器/链接器给出错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37826721/
我是一名优秀的程序员,十分优秀!