2015-09-09 4 views
0

При компиляции библиотеки SuperLU 4.3, используя OpenBLAS вместо регулярных распределений Блас, эта ошибка продолжает идти вверх:SuperLU с OpenBLAS: неопределенная ссылка на `pthread_atfork»

>gcc cdrive.o sp_cconvert.o cgst01.o cgst02.o cgst04.o cgst07.o sp_ienv.o \ 
> libtmglib.a /a/location/lib/libsuperlu_4.3.a ->L/a/location/lib/libopenblas.a -lopenblas -lm -o ctest 
>/a/location/lib/libopenblas.a(memory.o): In function >'openblas_fork_handler': 
>memory.c:(.text+0x3e0): undefined reference to 'pthread_atfork' 
>/a/location/lib/libopenblas.a(blas_server.o): In function >'blas_thread_shutdown_': 
>blas_server.c:(.text+0x25e): undefined reference to 'pthread_join' 
>/a/location/lib/libopenblas.a(blas_server.o): In function >'goto_set_num_threads': 
>blas_server.c:(.text+0x403): undefined reference to 'pthread_create' 
>/a/location/lib/libopenblas.a(blas_server.o): In function >'blas_thread_init': 
>blas_server.c:(.text+0x721): undefined reference to 'pthread_create' 
+0

Вам необходимо связать pthread/libpthread. Это может быть сделано автоматически, но не в вашем случае. Каков ваш линкер? – usr1234567

ответ

0

Вы должны связать PTHREAD/libpthread. В зависимости от компоновщика это может быть сделано автоматически, но не в вашем случае.