Community
cancel
Showing results for 
Search instead for 
Did you mean: 
yuriisig
Beginner
100 Views

About static linking Intel MKL libraries

At me it is installed Red Hat 6.0 (x86-64). I do static linking.

For example (actually at me thousand functions):

ifort myprog.f -L$MKLPATH -I$MKLINCLUDE
-Wl,--start-group $MKLPATH/libmkl_intel_ilp64.a $MKLPATH/libmkl_intel_thread.a
$MKLPATH/libmkl_core.a -Wl,--end-group -liomp5 -lpthread

I receive an error: It is not found -lpthread.

If not to use -lpthread translation comes to an end successfully.

0 Kudos
6 Replies
barragan_villanueva_
Valued Contributor I
100 Views

Hi,

You know some OSes has no static libpthread library.
So, please use additional option -Bdynamic before -lpthread

yuriisig
Beginner
100 Views

Victor,

Thanks.
My program is compiled approximately 2 hours. All is good.
I use mine MKL (I work with the packed matrixes and my algorithms much faster, than in Intel MKL, but some functions I take from Intel MKL. As a whole this software package very good).

--Yurii
Danesh_Daroui
Beginner
100 Views

I guess it is recommended to use dynamic linking instead of static linking because of the performance issues. After all, you will have smaller code with probably better performance if you use dynamic linking.

Good luck,

D.
yuriisig
Beginner
100 Views

At first, speed of the account is approximately identical.
Secondly, it is necessary for transfer of programs on other computers.
TimP
Black Belt
100 Views

You can't expect an application which uses libpthread to run on another machine which doesn't have a compatible glibc installation, so there's no point in linking it static.
yuriisig
Beginner
100 Views

I know it. I pursued absolutely other aims.

Reply