对‘pthread_create’未定义的引用

2023-05-16

注:本文由博主同步发布于:对‘pthread_create’未定义的引用

问题:

使用CLion,在Linux下编写C++多线程程序(使用future和async()),CMake构建项目失败,错误提示为"对‘pthread_create’未定义的引用"。

源码:

#include <iostream>
#include <future>

void th1(){
    std::cout<<"th1"<<std::endl;
}

void th2(){
    std::cout<<"th2"<<std::endl;
}

int main() {
    using namespace std;

    future<void> f1(async(th1));
    future<void> f2(async(th2));

    f1.get();
    f2.get();

    return 0;
}

错误提示:

在函数‘std::thread::thread<std::__future_base::_Async_state_impl<std::thread::_Invoker<std::tuple<void (*)()> >, void>::_Async_state_impl(std::thread::_Invoker<std::tuple<void (*)()> >&&)::{lambda()#1}>(std::__future_base::_Async_state_impl<std::thread::_Invoker<std::tuple<void (*)()> >, void>::_Async_state_impl(std::thread::_Invoker<std::tuple<void (*)()> >&&)::{lambda()#1}&&)’中:
/usr/include/c++/7/thread:122:对‘pthread_create’未定义的引用

原因:

由于pthread 库不是 Linux 系统默认的库,连接时需要使用静态库 libpthread.a,所以在使用pthread_create()创建线程时,在编译中要加 -lpthread参数。摘自--https://www.cnblogs.com/liuwanpeng/articles/6654702.html

解决:

在编译中要加 -lpthread参数

  • gcc xxx.c -o yyy -lpthread
  • CLion的CMakeLists文件:link_libraries(pthread)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对‘pthread_create’未定义的引用 的相关文章

随机推荐

  • 儿童诗词学习

    鹿寨 xff08 王维 xff09 空山不见人 xff0c 但闻人语响 返景入深林 xff0c 复照青苔上 独坐敬亭山 xff08 李白 xff09 众鸟高飞尽 xff0c 孤云独去闲 相看两不厌 xff0c 只有敬亭山 杂诗 xff08
  • 分页存储管理中的页表项长度是什么?

    看到很多人有疑问 xff1f 读到这里的时候我也有疑问的 在操作系统的分页存储管理方式中 xff0c 写道 xff1a 将页表始址与页号和页表项长度的乘积 相加 xff0c 便得到该表项在页表中的位置 于是可从中得到该页的物理块号 xff0
  • apt-get和aptitude

    1 apt get apt get是一条linux命令 xff0c 适用于deb包管理式的操作系统 xff0c 主要用于自动从互联网的软件仓库中搜索 安装 升级 卸载软件或操作系统 Advanced Package Tool xff0c 又
  • SPOOLing技术

    虚拟性是OS的四大特征之一 如果说可以通过多道程序技术 将一台物理CPU虚拟为多台 逻辑CPU xff0c 从而允许多个用户共享一台主机 xff0c 那么通过SPOOLing技术 便可将一台物理I O设备虚拟为多台 逻辑I O设备 xff0
  • C语言 gets()和scanf()函数的区别

    scanf 函数和gets 函数都可用于输入字符串 xff0c 但在功能上有区别 若想从键盘上输入字符串 34 hi hello 34 xff0c 则应该使用gets 函数 gets可以接收空格 xff1b 而scanf遇到空格 回车和Ta
  • vector删除元素之pop_back(),erase(),remove()

    向量容器vector的成员函数pop back 可以删除最后一个元素 而函数erase 可以删除由一个iterator指出的元素 xff0c 也可以删除一个指定范围的元素 还可以采用通用算法 remove 来删除vector容器中的元素 x
  • setw()使用方法

    1 setw xff08 int n xff09 只是对直接跟在 lt lt 后的输出数据起作用 xff0c 而在之后的 lt lt 需要在之前再一次使用setw xff1b xff08 Sets the number of charact
  • 主存到Cache直接映射、全相联映射和组相联映射

    Cache的容量很小 xff0c 它保存的内容只是主存 xff08 内存 xff09 内容的一个子集 xff0c 且Cache与主存的数据交换是以块 xff08 cache line xff09 为单位的 为了把信息放到Cache中 xff
  • 图的存储结构-十字链表和邻接多重表

    1 十字链表 对于有向图来说 xff0c 邻接表是有缺陷的 关心了出度问题 xff0c 想了解入度就必须要遍历整个图才能知道 反之 xff0c 逆邻接表 解决了入度 却不了解出度的情况 有没有可能把邻接表和逆邻接表结合起来呢 xff1f 答
  • U3D开发的逆天级大型游戏有哪些

    1 World of Diving 潜水世界 一款潜水游戏 潜水世界 xff1a http dx60 downyouxi com qianshuishijie zip 氛围不错 xff0c 不过细看建模好像不是特别精细的样子 2 The F
  • 中断屏蔽技术

    1 中断屏蔽技术 xff1a 主要用于多重中断 多重中断 xff1a xff08 中断嵌套 xff09 当CPU 正在执行某个中断服务程序时 xff0c 另一个中断源又提出了新的中断请求 xff0c 而CPU 又响应了这个新的请求 xff0
  • 互斥锁Mutex和信号量

    Mutex是一把钥匙 xff0c 一个人拿了就可进入一个房间 xff0c 出来的时候把钥匙交给队列的第一个 一般的用法是用于串行化对critical section代码的访问 xff0c 保证这段代码不会被并行的运行 Is a key to
  • TCP/UDP的Socket编程接口详解

    socket概述 xff1a socket是在应用层和传输层之间的一个抽象层 xff0c 它把TCP IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信 socket起源于UNIX xff0c 在Unix一切皆文件哲学的
  • release版本程序调用libvlc接口出现异常

    release版本程序调用libvlc接口出现异常 super raymond lu at gmail dot com 转载请注明出处http blog csdn net raymond lu rl article details 7515
  • 对基于深度神经网络的Auto Encoder用于异常检测的一些思考

    一 前言 现实中 xff0c 大部分数据都是无标签的 xff0c 人和动物多数情况下都是通过无监督学习获取概念 xff0c 故而无监督学习拥有广阔的业务场景 举几个场景 xff1a 网络流量是正常流量还是攻击流量 视频中的人的行为是否正常
  • 阿里巴巴五轮面试经验分享

    拿到阿里实习offer xff0c 经历了5次面试 xff0c 其中4轮技术面 xff0c 1轮HR面试 在这里分享一下自己的面试经验和学习心得 希望能够帮助更多的小伙伴 我本科毕业于中南大学信管专业 xff0c 真正开始学习Java是在大
  • FishC笔记—20 讲 函数:内嵌函数和闭包

    本期内容详解 xff1a 1 内嵌函数 xff1a 函数内部新创建另一个函数 2 闭包 xff1a 函数式编程的重要语法 xff0c 如果在一个内部函数里 xff0c 对外部作用域 xff08 但不是在全局作用域的变量 xff09 进行引用
  • bash: setup.bash: No such file or directory和.bashrc文件的问题

    前段时间linux中打开终端时 xff0c 总是出现bash opt ros indig setup bash No such file or directory的问题 此问题跟每次终端打开时要加载的bash有关 xff0c 于是查bash
  • STL 容器、迭代器、算法归纳整理

    注 xff1a 文章由博主同步发布于 xff1a STL 容器 迭代器 算法小结 标准模板库 内容主要源自C 43 43 Standard Library 与 C 43 43 Primer STL是C 43 43 标准库的核心 xff0c
  • 对‘pthread_create’未定义的引用

    注 xff1a 本文由博主同步发布于 xff1a 对 pthread create 未定义的引用 问题 xff1a 使用CLion xff0c 在Linux下编写C 43 43 多线程程序 xff08 使用future和async xff0