Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

static linking

Adrian_Edmonds1
Beginner
673 Views

I need to try static linking for our application. we are using Intel Composer 2013 with ipp7.1  and mkl for image processing. Up to now, we've used dynamic linking but we've run into problems on Xeon processors. Now I've read *all* the documentaion on this until my eyes blur and tried everything suggested. It still links dynamically! 

When I think I am getting there I try and link with the merge library set which simply does not exist anywhere on my PC. My question is is there a simple 'howto' document that spells out how to do this? We are using VS2008 and the microsoft compiler.

Thanks

0 Kudos
11 Replies
Ramashankar
New Contributor III
673 Views

Hi,

Well, i am not sure if there exist any simple 'How To' document for static linking, but I have linked IPP7.1.1.119 libraries statically in following way:

1. First of all, very important point is that IPP7.1 installer doesn't include the static libraries now. So you have to download it separately (w_ccompxe_threaded_static_ipp_7.1.x.xxx.zip) from the same link where you have downloaded IPP7.1 installer. 

2. This zip had w_ccompxe_threaded_static_ipp_7.1.x.xxx_ia32.exe and w_ccompxe_threaded_static_ipp_7.1.x.xxx_intel64.exe so install any one as per your platform. It will install all the required static libraies on your system.

3. Compile all the required IPP sample libraries after changing the preprocessor definition from _IPP_PARALLEL_DYNAMIC to _IPP_PARALLEL_STATIC.

Try this once, I hope it will work and fulfill your requirement.

0 Kudos
Adrian_Edmonds1
Beginner
673 Views

Ramashankar

Thanks! I'll try it.

0 Kudos
Adrian_Edmonds1
Beginner
673 Views

Well, I have searched , looked, examined and I am unable to find the merge libraries anywhere on the Intel site. We've paid for this and I am amazed that it's proving so hard.  w_ccompxe_threaded_static_ipp_7.1.x.xxx_intel64.exe  is nowhere to be seen. I guess I'll have to try support. Thanks for you help anyway.

0 Kudos
Sergey_K_Intel
Employee
673 Views

Hi Adrian,

Please, use Intel registration center site for IPP single-thread static libs. There are updates for 2013 Composer (http://software.intel.com/en-us/articles/intel-c-composer-xe-2013-for-windows-update-5#multithreaded_library).

Regards,
Sergey 

0 Kudos
Adrian_Edmonds1
Beginner
673 Views

Thanks Sergey ;

I did follow your link and it gets me to an article where the only resource link available is Intel Composer XE. Following that link get me to the registration page for the product. I would like to point out we have paid for this three years running. When I do finally get to my products page it shows me everything we have *except* the static multi threaded libraries. 

This has been the most frustrating update/download I have ever met. I have decided to buy Justin Beiber music CDS and listen to him until my brain turns into mush and I can shuffle off this vale of tears.

Regards

Adrian

0 Kudos
Ramashankar
New Contributor III
673 Views

Hi Adrian,

You can try to download it with the link which you would have received from Intel when you purchased the IPP license. On that link, you will get the option for downloading IPP7.1 and then below you will get the option for downloading additional items (like this static libraries, release notes etc).

I checked it just now with the link i received from Intelwhen I purchased IPP and i am able to see this download option. Check the attached screen shot for your reference)

0 Kudos
Sergey_K_Intel
Employee
673 Views

Ramashankar is right! Ultimately you should see the page like in attached jpg. Personally, I have few experience dealing with externally downloadable Intel products, otherwise I would provide better and faster feedback. Sorry for that. Wish you good luck.

Regards,
Sergey 

0 Kudos
Adrian_Edmonds1
Beginner
673 Views

Well I don't . Even though this is paid for and registered product the registration page still shows me all X's . When I go to the product page I get the attached screenshot. No links to static libraries there. Justin Beiber here I come.

0 Kudos
Ramashankar
New Contributor III
673 Views

Hi Adrian,

Yes, I could also notice that static libraies download option is not available in case of IPP8.0, but it is available in case of IPP7.1. 

Well, whatever i mentioned earlier about static linking and availability of static libraries, that was all with respect to IPP7.1. I am not aware of it with respect to IPP8.0. 

But in release note of IPP8.0, it is mentioned that 

    • Substantial distribution package reconfiguration
      • Main package changes
        • Intel® IPP library "_l" and "_t" suffixes removed. A new OS native convention is now implemented: Windows* static libraries now have an "mt" suffix for both single and multi-threaded libraries.
        • Threaded libraries are now moved into the "threaded" subfolder.
        • Single-threaded Dlls are moved into the main package.

http://software.intel.com/en-us/intel-ipp-80-library-release-notes

So you should go through the above instructions and i hope it will work.

0 Kudos
Adrian_Edmonds1
Beginner
673 Views

Well, moving to ipp8 is not an option I want to explore right now. The change would be more than we could cope with but thanks for your help.

0 Kudos
Adrian_Edmonds1
Beginner
673 Views

Well, for what it's worth, I did finally manage to locate the static libraries after a bit of a struggle. Installing it required an update to 7.1.1.119. Having done that with a valid license just gets me trapped in an endless loop of 'You must install Intel(R) 7.1.1.119 on Intel(R) 64 before installing Intel(R) ipp threaded static libraries on Intel(R) 64. 

A twisty little maze of passages all alike.

0 Kudos
Reply