Intel® Integrated Performance Primitives for Mac OS* - Application using ippAC libary build failed under Mac OS*
Symptom(s): For example, Build Simple_player Sample:
Run build32.sh of ../ipp-samples/audio-video-codecs, two of the sample projects fails:
The log files for both projects list similar errors. For simple_player, the errors is:
/usr/bin/ld: warning can't open dynamic library: libippcore-5.3.dylib referenced from: /Library/Frameworks/Intel_IPP.framework/Versions/5.3/em64t/Libraries/libippac.dylib (checking for undefined symbols may be affected) (No such file or directory, errno = 2)
/usr/bin/ld: warning can't open dynamic library: libguide.dylib referenced from: /Library/Frameworks/Intel_IPP.framework/Versions/5.3/em64t/Libraries/libippac.dylib (checking for undefined symbols may be affected) (No such file or directory, errno = 2)
/usr/bin/ld: Undefined symbols:
_ippGetCpuType referenced from libippac-5 expected to be defined in libippcore-5.3.dylib
collect2: ld returned 1 exit status
The environment was set correctly and the libraries are in the correct place.
Cause:
The ippAC libraries were bound to frameworks on Mac OS*X incorrectly. Two shell scripts to unbind and then rebind the IPP to the framework fix the problem.
Solution:
The solution is for IPP 5.3 Update 1:
Please make sure IPP 5.3 Update 1 installed. (the installed package is m_ipp_p_5.3.1.056)
Please download the fixed scripts from
ippbind.zip, copy the "ippbind.sh" and "ippunbind.sh" into the directory where IPP installed (e.g /Library/Frameworks/Intel_IPP.framework) and change them in executatable file
$chmod +x ippbind.sh
$chmod +x ippunbind.sh
With "root" account,cd into directory where IPP installed (e.g /Library/Frameworks/Intel_IPP.framework),
run ippunbind.sh script first to unbind IPP library to Framework.
Then run ippbind.sh script to bind IPP library to Framework.
$ cd /Library/Frameworks/Intel_IPP.framework
$ ./ippunbind.sh
SUCCESSFULLY
$ ./ippbind.sh
SUCCESSFULLY
Enter the directory where your application are in, e.g,
[optional Step ]run IPP 5.3 update1 environment first,
$ cd ../ipp-samples/audio-video-codecs
$ . /Library/Frameworks/Intel_IPP.framework/Versions/5.3.1.056/ia32/tools/env/ippvars.sh
then build the sample,
$ ./build32.sh