Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.

Shared Library for Intel fftw wrapper

ma_x_
Einsteiger
3.316Aufrufe

Dear Engineer,

I am a newbee for complier opensource software. Also I found that intel parallel XE support FFTW wrapper include C and Fortran interface, I successful complier the .a static library on CentOS 7 Linux, I want to know, how to  complier a shared library .so?

Thanks a lot and best wishes!

Weasley

0 Kudos
1 Lösung
Ying_H_Intel
Moderator
3.316Aufrufe

Hi Ma X.

Do you have any special request about shared fftwf library?

But  as fftw wrapper itself was integrated to mkl shared library,  you can use MKL shared library directly for FFTW application. find the required mkl library by https://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/

If you have to use one shared library ,   you may change the makefile as below

$(INSTALL_LIBNAME) =  libfftw3xf_$(compiler).so

$(INSTALL_DIR)/$(INSTALL_LIBNAME): $(WRAP:%=$(obj_path)/%.o)
        ld -o  $@ $^

Best Regards,

Ying
 

Lösung in ursprünglichem Beitrag anzeigen

4 Antworten
mecej4
Geehrter Beitragender III
3.316Aufrufe

You have not told us what you put into your static library. If the objects in that library do not contain a "main" program, you can use the a command similar to the following. All items between carets are to be replaced with appropriate names.

     <compiler_driver_name> -shared *.o -L<library_path> -l<MKL_and_other_libraries> -o <mydll.so>

ma_x_
Einsteiger
3.316Aufrufe

Dear mecej4,

First thanks for your fast reply. I am sorry I am not say it clearly....

I mean I use this url https://software.intel.com/en-us/mkl-developer-reference-c-building-your-own-wrapper-library, and can successful build my own libfftw3xf_intel.a, but how to build a shared library "libfftw3xf_intel.so" ?

Thanks a lot!

Ying_H_Intel
Moderator
3.317Aufrufe

Hi Ma X.

Do you have any special request about shared fftwf library?

But  as fftw wrapper itself was integrated to mkl shared library,  you can use MKL shared library directly for FFTW application. find the required mkl library by https://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/

If you have to use one shared library ,   you may change the makefile as below

$(INSTALL_LIBNAME) =  libfftw3xf_$(compiler).so

$(INSTALL_DIR)/$(INSTALL_LIBNAME): $(WRAP:%=$(obj_path)/%.o)
        ld -o  $@ $^

Best Regards,

Ying
 

ma_x_
Einsteiger
3.316Aufrufe

Many thanks to you Ying, I will have a try.

Antworten