Undefined reference to pthread_create in Linux
For Linux the correct command is:
gcc -pthread -o term term.c
In general, libraries should follow sources and objects on command line, and -lpthread
is not an "option", it's a library specification. On a system with only libpthread.a
installed,
gcc -lpthread ...
will fail to link.
in eclipse
properties->c/c++Build->setting->GCC C++ linker->libraries in top part add "pthread"
For Linux the correct command is:
gcc -o term term.c -lpthread
- you have to put -lpthread just after the compile command,this command will tell to the compiler to execute program with pthread.h library.
- gcc -l links with a library file.Link -l with library name without the lib prefix.