linux - 未定义的对 -finstrument-functions 的引用

标签 linux gcc linux-kernel arm linux-device-driver

我正在尝试跟踪内核函数,并且我正在使用 -finstrument-functions 来执行此操作,但我收到如下 undefined reference 错误:

arch/arm/kernel/elf.c:9: undefined reference to `__cyg_profile_func_enter'
arch/arm/kernel/elf.c:13: undefined reference to `__cyg_profile_func_exit'
arch/arm/kernel/built-in.o: In function `elf_set_personality':
arch/arm/kernel/elf.c:42: undefined reference to `__cyg_profile_func_enter'
arch/arm/kernel/elf.c:75: undefined reference to `__cyg_profile_func_exit'

drivers 中也有很多类似上面的错误。 我已经导出了 __cyg_profile_func_enter__cyg_profile_func_exit 符号,但我仍然收到此错误。我使用 linux 4.1 内核 和 arm board。

最佳答案

你在头文件中也加入了__cyg_profile_func_enter 和__cyg_profile_func_exit 的条目吗?如果没有,请在头文件中声明这些函数,并确保模块正在编译。

关于linux - 未定义的对 -finstrument-functions 的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41776363/

相关文章:

linux - 在 CFS 组调度中,我怎么知道 sched_entity 是叶实体(与实际任务相关联)?

c++ - 安装? linux屏幕后面有什么?

c - 在 Linux 下分发具有库依赖项的 C 程序的选项

linux - 如何强制链接来自特定库的符号?

Linux CFS如何选择下一个进程

c++ - 我在探查器输出中看到的 __nss_passwd_lookup() 调用是关于什么的?

PHP 忽略 mysql_connect 请求

c++ - 如何使 g++ -std=c++14 成为默认选项

c - 将 -static 与 GCC 一起使用可以保证我的 C 程序可以跨 x86 发行版运行吗?

c - gdb 目标远程 :1234 connection timeout linux