Determining if the pthread_create exist failed with the following output: Change Dir: /home/emile/DSIK_C/cmake-build-debug/CMakeFiles/CMakeTmp Run Build Command:"/usr/bin/make" "cmTC_ea9db/fast" /usr/bin/make -f CMakeFiles/cmTC_ea9db.dir/build.make CMakeFiles/cmTC_ea9db.dir/build make[1]: Entering directory '/home/emile/DSIK_C/cmake-build-debug/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_ea9db.dir/CheckSymbolExists.c.o /usr/bin/cc -std=gnu11 -o CMakeFiles/cmTC_ea9db.dir/CheckSymbolExists.c.o -c /home/emile/DSIK_C/cmake-build-debug/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_ea9db /home/emile/Downloads/clion-2018.3.3/bin/cmake/linux/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ea9db.dir/link.txt --verbose=1 /usr/bin/cc CMakeFiles/cmTC_ea9db.dir/CheckSymbolExists.c.o -o cmTC_ea9db /usr/bin/ld: CMakeFiles/cmTC_ea9db.dir/CheckSymbolExists.c.o: in function `main': CheckSymbolExists.c:(.text+0x1b): undefined reference to `pthread_create' collect2: error: ld returned 1 exit status make[1]: *** [CMakeFiles/cmTC_ea9db.dir/build.make:87: cmTC_ea9db] Error 1 make[1]: Leaving directory '/home/emile/DSIK_C/cmake-build-debug/CMakeFiles/CMakeTmp' make: *** [Makefile:121: cmTC_ea9db/fast] Error 2 File /home/emile/DSIK_C/cmake-build-debug/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */ #include int main(int argc, char** argv) { (void)argv; #ifndef pthread_create return ((int*)(&pthread_create))[argc]; #else (void)argc; return 0; #endif }