关于undefined reference to `pthread_create'\`pthread_join'的问题。

在写linux线程时,遇到一下错误:

arm-linux-gcc -Wall -o "main" "main.c"

/tmp/ccqHoSrP.o: In function `main':
main.c:(.text+0x2f0): undefined reference to `pthread_create'
main.c:(.text+0x330): undefined reference to `pthread_create'
main.c:(.text+0x368): undefined reference to `pthread_join'
main.c:(.text+0x398): undefined reference to `pthread_join'
collect2: ld returned 1 exit status

编译失败。


根据错误提示,#include <pthread.h> 头文件没有编译。检查了程序没有问题。

原因:pthread 库不是 Linux 系统默认的库,连接时需要使用静态库 libpthread.a,

方法:在makefile文件中加入 -lpthread

arm-linux-gcc -o main $(objects) -lpthread

再次编译没有错误,程序运行正常。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值