Steps to build a windows application using Intel IPP
Note : This article is for Intel® IPP older than version 7.0
for newer versions please check
Setting Environment Variables
The batch files ippenv.bat and ippenv64.bat in the tools/env directory sets Intel® IPP LIB, INCLUDE, and PATH environment variables for a command prompt session. In order to set the environment variables outside of a single command prompt session, please complete the following steps in Windows XP*:
- Right-click on the My Computer icon located on your desktop or from Windows Explorer =>Select the Advanced tab=> Select the Environment Variables button.
- Use the interface to set the environment variables for only the current user (top dialog box) or for anyone who uses the system (bottom dialog box).
- Select the variable you wish to modify and click the Edit button.
- Add the path to related Intel IPP files to the existing list:
- For example, select INCLUDE and then type in the directory for the Intel IPP header files (e.g. default: C:\Program Files\Intel\IPP\X.X\ia32\include).
- For example, select LIB and then type in the directory for the Intel IPP stub libraries (e.g. default: C:\Program Files\Intel\IPP\X.X\ia32\stublib or C:\Program Files (x86)\Intel\ComposerXE-2011\ipp\lib\ia32 ).
- For example, select PATH and then type in the directory for the Intel IPP binaries (e.g. default: C:\Program Files\Intel\IPP\X.X\ia32\bin or C:\Program Files (x86)\Intel\ComposerXE-2011\redist\ia32\ipp).
- For example, add variable IPPROOT and type "C:\Program Files\Intel\IPP"
- Click OK in the Edit User Variable dialog box.
- Click OK in the Environment Variables dialog box.
- Click OK in the Systems Properties dialog box.
Please notes: the IPP directory structure and library name changed in 7.0 and later. The method describes in the article should be still effective, but you may change the directory or library name correspondingly. Please refer to the article New Directory Structure and Library Naming in IPP and IPP 7.0 - Selecting the Intel® IPP Libraries Needed by Your Application
Header Files, Dynamic and Static Libraries
The Intel IPP supports four different linking models for each functional group/domain of the library. The libraries used for each model are listed in the table below.
Including Header Files
Intel IPP functions and types are defined in several header files organized by function group and are located in the \include directory. For example, the ipps.h file contains declarations for all signal processing functions. See the column "Header files" in the above table for additional information.
The file ipp.h includes all Intel IPP header files. For forward compatibility, include only ipp.h in your program.
Choosing Linked Libraries
There are several linkage models to choose from when using Intel® IPP functions in an application:
- Dispatcher Libraries and Dynamic Linkage
- Custom Dynamic Linkage
- Static Linkage without Dispatching (Merged)
- Static Linkage with Dispatching (E-Merged)
When making this decision, some things to consider are development and target environments, installation specifications, run-time conditions, and other application requirements.
For choose simple linking strategy, please see simplified linking strategy
For more information, please read the document:Intel IPP Linkage Models - Quick Reference Guide.