Changes between Version 22 and Version 23 of Intel_IPP_Codecs


Ignore:
Timestamp:
Feb 10, 2010 6:43:07 PM (11 years ago)
Author:
bennylp
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Intel_IPP_Codecs

    v22 v23  
    5757}}} 
    5858 
    59  '''Update:''' (2009/01/02):: 
    60   We have tested Intel IPP '''version 6.x''' on Windows/Visual Studio and found the following results: 
    61     - the build and integration instructions on this page still apply for version 6.0, with the minor exceptiond: 
    62          - the '''{{{bin}}}''' folder of the {{{speech-codec}}} samples has been renamed to '''{{{_bin}}}'''. 
    63          - the '''{{{usc.lib}}}''' file has been renamed to '''{{{speech.lib}}}'''. Support for this has been added on PJSIP version 1.0.3 (or revision r2412 or later). 
    64     - there are '''link errors''' when building the application using '''statically linked CRT''' ({{{/MT[d]}}} compiler option), something like the following: 
    65       {{{ 
    66 msvcrt.lib(ti_inst.obj) : error LNK2005: "private:  
    67   __thiscall type_info::type_info(class type_info const &)" 
    68  (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj) 
    69  
    70 msvcrt.lib(ti_inst.obj) : error LNK2005: "private: class type_info  
    71   & __thiscall type_info::operator=(class type_info const &)"  
    72   (??4type_info@@AAEAAV0@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj)'' 
    73       }}} 
    74       This is caused by that IPP samples is by default built using '''dynamically linked CRT''' ({{{/MD}}} compiler option). A simple way to solve this is by modifying the {{{makefile}}} of {{{speech-codec}}} samples, for example by inserting the following line to {{{ipp-samples\speech-codecs\Makefile}}} line 46: 
    75       {{{ 
    76           M_FLAG = /Zl ## omitting the default C runtime library name 
    77       }}} 
    78       IPP samples application ({{{*.exe}}}) may not build successfully, however {{{speech.lib}}} will be built successfully and linkable with any CRT linkage types. 
    79  
    80  '''Update:''' (2009/01/14):: 
    81   Michael Toop has tested Intel IPP '''version 6.0 Update 1''' on Ubuntu Linux 8.04, and posted [http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/2009-January/005836.html detail instructions] on how to fix PJSIP to use IPP v.60. 
    82  
    8359 
    8460{{{ 
     
    10581 1. Go to {{{speech-codecs}}} folder. 
    10682 1. Open the {{{readme.htm}}} file, and follow the instructions there to build the samples from the source. 
    107      - Typically the build process will involve just setting the IPPROOT envirunment variable and execute the {{{buildxx.bat}}} batch file. 
    108  
    109 Once the build process done, you should have '''{{{usc.lib}}}''' file in a directory inside {{{speech-codecs\bin}}} directory (in my case, it's in {{{C:\ipp-samples\speech-codecs\bin\win32_cl9\lib}}} folder). The directory name corresponds to the platform where the samples are built for. (Note: for IPP version 6, the {{{bin}}} folder has been renamed to {{{_bin}}}). 
     83     - typically the build process will involve just setting the IPPROOT environment variable and execute one of the {{{build*.bat}}} batch file. 
     84 
     85The build process produces the following: 
     86 - (for IPP v5.3) '''{{{usc.lib}}}''' file somewhere under {{{speech-codecs\bin}}} directory, e.g. {{{ipp-samples\speech-codecs\bin\win32_cl9\lib}}} directory.  
     87 - (for IPP v6.x) '''{{{speech.lib}}}''' file somewhere under {{{speech-codecs\_bin}}} directory, e.g. {{{ipp-samples\speech-codecs\_bin\win32_cl9\lib}}} directory.  
    11088 
    11189If you have any problems with installing and/or building the IPP or IPP samples, please read the IPP documentation or contact Intel for support. 
     
    122100    - add to the include path: 
    123101           - {{{C:\ipp-samples\speech-codecs\core\usc\include}}} 
    124     - add to the library path (please replace {{{win32_cl9}}} with the actual directory name where the file '''{{{usc.lib}}}''' is found. Please see the IPP build instructions above): 
     102    - add to the library path (please replace {{{win32_cl9}}} with the actual directory name where the file '''{{{usc.lib}}}''' is found (or '''{{{speech.lib}}}''' for IPP 6.x). Please see the IPP build instructions above): 
    125103           - {{{C:\ipp-samples\speech-codecs\bin\win32_cl9\lib}}} 
    126104 
    127105Note that you still need to enable IPP support in your {{{config_site.h}}} in order to use the IPP features. This will be explained in later sections. 
    128106 
     107 
     108==== Issues with building statically linked application ==== 
     109 
     110There are '''link errors''' when building the application using '''statically linked CRT''' ({{{/MT[d]}}} compiler option), something like the following: 
     111{{{ 
     112msvcrt.lib(ti_inst.obj) : error LNK2005: "private:  
     113  __thiscall type_info::type_info(class type_info const &)" 
     114 (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj) 
     115 
     116msvcrt.lib(ti_inst.obj) : error LNK2005: "private: class type_info  
     117  & __thiscall type_info::operator=(class type_info const &)"  
     118  (??4type_info@@AAEAAV0@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj)'' 
     119}}} 
     120 
     121This is caused by that IPP samples is by default built using '''dynamically linked CRT''' ({{{/MD}}} compiler option). A simple way to solve this is by modifying the {{{makefile}}} of {{{speech-codec}}} samples, for example by inserting the following line to {{{ipp-samples\speech-codecs\Makefile}}} line 46: 
     122 
     123{{{ 
     124M_FLAG = /Zl ## omitting the default C runtime library name 
     125}}} 
     126 
     127IPP samples application ({{{*.exe}}}) may not build successfully, however {{{speech.lib}}} will be built successfully and linkable with any CRT linkage types. 
    129128 
    130129=== Linux Instructions === 
     
    141140 1. Go to the directory where IPP samples have been extracted to (e.g. {{{~/Desktop/ipp-samples}}}). 
    142141 1. Go to {{{speech-codecs}}} folder. 
    143  1. Open the {{{readme.htm}}} file, and follow the instructions there to build the samples from the source. Typically you'd just need to execute one of the '''build*.sh''' script. 
     142 1. Open the {{{readme.htm}}} file, and follow the instructions there to build the samples from the source. 
     143   - typically you'd just need to execute one of the '''build*.sh''' script after setting the IPPROOT environment variable. 
    144144 
    145145The build process produces the following: