When I develop a parallelized CEM code compiled with the Intel C++/Fortran compiler, I encounter two problems (my code is compiled and running on Linux Platform):
1. I need use some functions in Linpack library. So I make it as a static lib, and then call it in my main program. However, if the static lib is generated with gfortran compiler, while the main code is compiled with icpc, a segment error occurs when main program calls this library. So, the question is: Can a main program compiled with Intel compiler call a library generated with gcc or gfortran, or vice verse?
2. When both the main program and library are compiled with gcc/gfortran, in a for loop, the calling of library can be parallelized with OpenMP. However if both of them are compiled with Intel complier, the for loop can not be parallelized. Only one thread is permitted to call the library.
Any one knows how to solve these problems? Thanks so much!