无法访问库

时间:2014-12-08 13:05:05

标签: c

我想为Perf_Event使用libpfm4库 但编译具有库函数的程序 抛出以下错误。

   /tmp/ccYD603t.o: In function `main':
    encod.c:(.text+0x44): undefined reference to `pfm_initialize'
    encod.c:(.text+0x57): undefined reference to `pfm_strerror'
    encod.c:(.text+0x97): undefined reference to `pfm_get_perf_event_encoding'
    encod.c:(.text+0xaa): undefined reference to `pfm_strerror'

collect2: ld returned 1 exit status

请任何人告诉我如何在系统中配置库来解决此错误。

1 个答案:

答案 0 :(得分:1)

如评论中所述,您正在查看链接器错误。因为这是一个常见的错误,我们有一个参考问题:

What is an undefined reference/unresolved external symbol error and how do I fix it?

为了告诉你更多关于你做错了什么,我们需要看看你是如何编译的。简而言之,您可能#include库标题但不链接库。编译器告诉链接器编译的代码将需要在库头中声明的实体,但链接器会因为它不知道这些实体的定义而扼流圈。