undefined reference to涉及的链接问题

在linux下,编译链接的时候,经常会遇到这样一个问题,undefined reference to.....,引起这个问题的原因在于在链接的时候缺少选项。下面举几个例子,并给出解决办法。

1、undefined reference to `dlerror'
     undefined reference to `dlopen'
     undefined reference to `dlerror'

    解决办法:在makefile的LDFLAGS后面把选项 -ldl 添加上即可。

2、undefined reference to `main'

    解决办法:在makefile的LDFLAGS后面添加 -nostartfiles 选项。

3、undefined reference to `pthread_setspecific'
     undefined reference to `pthread_key_delete'
     undefined reference to `pthread_key_create'

    解决办法:在makefile的LDFLAGS后面添加 -lpthread 选项。

4、undefined reference to `clock_gettime'

    解决办法:在makefile的LDFLAGS后面添加 -lrt 选项。

 

不过要注意的是,如果undefined reference to后面的内容是在自己的文件中声明或定义的东西,就不能用这种方法来解决了。这时就需要检查一下自己的makefile涉及到源文件、头文件的地方是否出错了,也有可能是其他的原因。

 

 

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

undefined reference to涉及的链接问题

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭