我正在编译一个使用ifort几个MKL库的软件包。 Makefile中主要进行链接的部分:
# Library options in general
MKL_LIBDIR = /opt/intel/mkl/lib/intel64
LIBOPT = -L$(MKL_LIBDIR)
# How to link specific libraries
LIB_BLAS = -Wl,--start-group \
-lmkl_intel_lp64 \
-lmkl_intel_thread \
-lmkl_core \
-Wl,--end-group \
-liomp5 -lpthread
LIB_LAPACK =
当我编译它时,我有一个错误:
ld: cannot find -lpthread
make[1]: *** [dftb+] Error 1
make[1]: Leaving directory `/home/gjuhasz_p/Downloads/dftb-src/dftb+_1.2.2_src/prg_dftb/_obj_x86_64-linux-ifort'
make: *** [_obj_x86_64-linux-ifort] Error 2
我尝试添加-L /目录或导出LD_LIBRARY_PATH = /目录(基于locate告诉我有关libpthread.so的内容) 但是,ld仍然找不到库,也无法链接。 如果我只是注释掉这个链接命令,我也遇到了与其他库类似的问题。
为什么会发生这种情况,我该如何解决?谢谢!