`
anson_xu
  • 浏览: 512979 次
  • 性别: Icon_minigender_1
  • 来自: 惠州
社区版块
存档分类

undefined reference to 'pthread_create'问题解决

 
阅读更多
undefined reference to 'pthread_create'问题解决
分类: Linux Ubuntu程序开发 2008-08-31 09:51 12304人阅读 评论(10) 收藏 举报
由于是Linux新手,所以现在才开始接触线程编程,照着GUN/Linux编程指南中的一个例子输入编译,结果出现如下错误:
undefined reference to 'pthread_create'
undefined reference to 'pthread_join'

问题原因:
    pthread 库不是 Linux 系统默认的库,连接时需要使用静态库 libpthread.a,所以在使用pthread_create()创建线程,以及调用 pthread_atfork()函数建立fork处理程序时,需要链接该库。
问题解决:
    在编译中要加 -lpthread参数
    gcc thread.c -o thread -lpthread
    thread.c为你写的源文件,不要忘了加上头文件#include<pthread.h>


g++ -g LinkList.cpp testlinklist.cpp -o testlinklist -lpthread
分享到:
评论

相关推荐

    undefined reference to 'pthread_create'的解决方法

    总结起来,当你在Linux环境下编写多线程程序并遇到“undefined reference to 'pthread_create'”错误时,你需要做以下两件事来解决问题: 1. 在源代码中包含pthreads的头文件:`#include &lt;pthread.h&gt;` 2. 在编译命令...

    undefined reference to ‘pthread_create’的解决方法

    undefined reference to ‘pthread_create’undefined reference to ‘pthread_join’ 问题原因: pthread 库不是 Linux 系统默认的库,连接时需要使用静态库 libpthread.a,所以在使用pthread_create()创建线程,...

    基于pthread_create,readlink,getpid等函数的学习与总结

    `pthread_create`是POSIX线程库(pthread)中的核心函数,用于创建新的线程。它允许程序员在一个进程中创建多个执行线程,从而实现并行处理。以下是`pthread_create`函数的详细解析: ```c #include &lt;pthread.h&gt; ...

    opencv移植到arm, 包含cmake包

    ../../lib/libopencv_core.so: undefined reference to `pthread_key_create 解决方法: 修改CMakeCache.txt,CMAKE_EXE_LINKER_FLAGS原来为空,加上-lpthread -lrt,重新编译,错误消除 错误二: Linking CXX ...

    glibc-2.2.5.tar.gz

    5. **线程支持**:glibc提供了线程创建、同步和通信的API,如pthread_create、pthread_join、mutex、condition_variable等,使得多线程编程成为可能。 6. **动态链接**:glibc支持动态链接,使得程序可以在运行时...

    Windows下使用Dev-C++开发基于pthread.h的多线程程序实例

    如果在编译过程中遇到“undefined reference to 'pthread_create'”的错误,说明链接器无法找到pthread_create函数的定义。解决这个问题的办法是在编译器选项中加入-lpthread参数,以便链接器链接到pthread库。 ...

    opencv移植到arm教程

    ../../lib/libopencv_core.so: undefined reference to `pthread_key_create' ../../lib/libopencv_core.so: undefined reference to `pthread_getspecific' ... make[2]: *** [bin/opencv_test_calib3d] Error ...

    错误:sem_union的存储大小未知问题的解决方法

    例如,如果你正在使用线程编程,并遇到"undefined reference to 'pthread_create'"或"undefined reference to 'pthread_join'"的错误,这通常是因为没有正确链接到`pthread`库。解决方法是在编译命令中添加`-...

    Ubuntu 蓝牙全攻略-- HFP for Linux.docx

    3. **错误提示:“undefined reference to symbol 'pthread_create'”**: - 解决方案:在相关Makefile文件中增加`-lpthread`参数。 4. **错误提示:“ImportError: No module named glade”**: - 解决方案:...

    linux下组播遇到的问题及解决办法3.docx

    - **编译时出现 undefined reference to 错误**:检查符号定义和链接器设置。 - **Linux 下打包目录命令**:使用 `tar` 命令。 - **查看当前动态库链接目录**:使用 `ldd` 命令。 - **海思芯片硬解码支持的码流格式*...

    linux环境下的c编程代码

    例如,如果未声明函数,错误可能显示“undefined reference”。 5. **调试C程序**: GDB(GNU Debugger)是Linux下的标准调试工具。通过`gcc -g filename.c`编译代码,包含调试信息。然后运行`gdb program`启动...

    Google C++ Style Guide(Google C++编程规范)高清PDF

    Parameters to C/C++ functions are either input to the function, output from the function, or both. Input parameters are usually values or const references, while output and input/output parameters ...

Global site tag (gtag.js) - Google Analytics