对'pthread_create'的未定义引用

13 c++ makefile pthreads

我有客户端服务器代码.LinServer.cpp使用pthread不断监听客户端.我创建了make文件来编译所有togather:

all: LinServer LinClient

    LinServer:
    g++ LinServer.cpp -o LinServer -pthread

    LinClient:
    g++ LinClient.cpp -o LinClient -pthread
Run Code Online (Sandbox Code Playgroud)

我也试过-lpthread但是同样的错误:

LinServer.cpp:(.text+0x29b): undefined reference to `pthread_create'
LinServer.cpp:(.text+0x2a7): undefined reference to `pthread_detach'
collect2: error: ld returned 1 exit status
make: *** [LinServer] Error 1
Run Code Online (Sandbox Code Playgroud)

知道这里有什么问题吗?

Mat*_*son 31

您应该使用-lpthread没有-pthread.

  • 加一个应确保顺序正确:它必须在命令行中的目标文件之后进入命令行 (6认同)