<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Hi Grant, in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/Link-error-on-ippsMul-16sc-Sfs/m-p/1056885#M24144</link>
    <description>&lt;P&gt;Hi Grant,&lt;/P&gt;

&lt;P&gt;Unlike Windows' linker, in Linux the "ld" doesn't perform search for undefined symbols back in the libraries specified in command line. It means, that it's better to provide libraries from the left to the right in order of their dependency.&lt;/P&gt;

&lt;P&gt;In your case the libippcore must be the last in the list of IPP libraries. I would say, that for image processing the dependency is libippcv-&amp;gt;libippi-&amp;gt;libipps-&amp;gt;libippcore. It will be better if you specify libraries in that order.&lt;/P&gt;</description>
    <pubDate>Thu, 20 Aug 2015 05:16:56 GMT</pubDate>
    <dc:creator>Sergey_K_Intel</dc:creator>
    <dc:date>2015-08-20T05:16:56Z</dc:date>
    <item>
      <title>Link error on ippsMul_16sc_Sfs</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Link-error-on-ippsMul-16sc-Sfs/m-p/1056882#M24141</link>
      <description>&lt;P&gt;Link errors on &lt;STRONG&gt;ippsMul_16sc_Sfs&lt;/STRONG&gt;, also on &lt;STRONG&gt;ippsSet_16sc&lt;/STRONG&gt; (in &lt;STRONG&gt;bold&lt;/STRONG&gt; in build output below).&amp;nbsp; Both have undefined reference t&lt;STRONG&gt;o&amp;nbsp; ippJumpIndexForMergedLibs&lt;/STRONG&gt; (and subsequent errors).&lt;/P&gt;

&lt;PRE class="brush:bash;"&gt;"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: Entering directory `/home/sidekiq/sidekiq_sdk_v1.17/TimingTestIpp'
"/usr/bin/make"  -f nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux-x86/timingtestipp
make[2]: Entering directory `/home/sidekiq/sidekiq_sdk_v1.17/TimingTestIpp'
mkdir -p build/Debug/GNU-Linux-x86/src
rm -f "build/Debug/GNU-Linux-x86/src/CicDownSamp.o.d"
gcc    -c -g -Isrc -Iinc -I../sidekiq_core/inc -I/opt/intel/ipp/include -MMD -MP -MF "build/Debug/GNU-Linux-x86/src/CicDownSamp.o.d" -o build/Debug/GNU-Linux-x86/src/CicDownSamp.o src/CicDownSamp.c
mkdir -p build/Debug/GNU-Linux-x86/src
rm -f "build/Debug/GNU-Linux-x86/src/TimingTestIpp.o.d"
gcc    -c -g -Isrc -Iinc -I../sidekiq_core/inc -I/opt/intel/ipp/include -MMD -MP -MF "build/Debug/GNU-Linux-x86/src/TimingTestIpp.o.d" -o build/Debug/GNU-Linux-x86/src/TimingTestIpp.o src/TimingTestIpp.c
mkdir -p dist/Debug/GNU-Linux-x86
gcc -o dist/Debug/GNU-Linux-x86/timingtestipp build/Debug/GNU-Linux-x86/src/CicDownSamp.o build/Debug/GNU-Linux-x86/src/TimingTestIpp.o -L../lib -L/opt/intel/ipp/lib/intel64 -lsidekiq__x86_64 /opt/intel/ipp/lib/intel64/libippcc.a /opt/intel/ipp/lib/intel64/libippch.a /opt/intel/ipp/lib/intel64/libippcore.a /opt/intel/ipp/lib/intel64/libippcv.a /opt/intel/ipp/lib/intel64/libippdc.a /opt/intel/ipp/lib/intel64/libippi.a /opt/intel/ipp/lib/intel64/libipps.a /opt/intel/ipp/lib/intel64/libippvm.a -lpthread -lm -lrt -ldl
/opt/intel/ipp/lib/intel64/libipps.a(jmp_ippsMul_16sc_Sfs_as.o): &lt;STRONG&gt;In function `ippsMul_16sc_Sfs':&lt;/STRONG&gt;
&lt;STRONG&gt;/localdisk/buildbot/ipp/8.2-gold/lib_build_l64_st/l64_st/build/.build/linux/obj/intel64/ipps/emerged_smart/pic/dispatcher/jmp_ippsMul_16sc_Sfs_as.s:(.text+0x3): undefined reference to `ippJumpIndexForMergedLibs'&lt;/STRONG&gt;
/opt/intel/ipp/lib/intel64/libipps.a(jmp_ippsSet_16sc_as.o): &lt;STRONG&gt;In function `ippsSet_16sc':&lt;/STRONG&gt;
&lt;STRONG&gt;/localdisk/buildbot/ipp/8.2-gold/lib_build_l64_st/l64_st/build/.build/linux/obj/intel64/ipps/emerged_smart/pic/dispatcher/jmp_ippsSet_16sc_as.s:(.text+0x3): undefined reference to `ippJumpIndexForMergedLibs'&lt;/STRONG&gt;
/opt/intel/ipp/lib/intel64/libipps.a(pscopye9cn_e9---ownsSet_32s.o): In function `e9_ownsSet_32s':
pscopye9cn.c:(.text+0x50): undefined reference to `ippGetMaxCacheSizeB'
/opt/intel/ipp/lib/intel64/libipps.a(pscopye9cn_l9---ownsSet_32s.o): In function `l9_ownsSet_32s':
pscopye9cn.c:(.text+0x50): undefined reference to `ippGetMaxCacheSizeB'
/opt/intel/ipp/lib/intel64/libipps.a(pscopye9cn_l9---ownsZero_8u.o): In function `l9_ownsZero_8u':
pscopye9cn.c:(.text+0x45): undefined reference to `ippGetMaxCacheSizeB'
/opt/intel/ipp/lib/intel64/libipps.a(pscopye9cn_e9---ownsZero_8u.o): In function `e9_ownsZero_8u':
pscopye9cn.c:(.text+0x44): undefined reference to `ippGetMaxCacheSizeB'
collect2: ld returned 1 exit status
make[2]: *** [dist/Debug/GNU-Linux-x86/timingtestipp] Error 1
make[2]: Leaving directory `/home/sidekiq/sidekiq_sdk_v1.17/TimingTestIpp'
make[1]: *** [.build-conf] Error 2
make[1]: Leaving directory `/home/sidekiq/sidekiq_sdk_v1.17/TimingTestIpp'
make: *** [.build-impl] Error 2


BUILD FAILED (exit value 2, total time: 253ms)
&lt;/PRE&gt;

&lt;P&gt;-----------------------------------------------&lt;/P&gt;

&lt;P&gt;Ubuntu 12.04 LTS&lt;/P&gt;

&lt;P&gt;Intel® Core™ i7-4610M CPU @ 3.00GHz × 4&lt;/P&gt;

&lt;P&gt;static libraries: have added all ipp static libraries (by file) to netbeans project (e.g. libipps.a, ...)&lt;/P&gt;

&lt;P&gt;Library paths specified: ../lib;/opt/intel/ipp/lib/intel64&lt;/P&gt;

&lt;P&gt;Netbeans IDE 7.4&lt;/P&gt;

&lt;P&gt;IPP_VERSION_STR "8.2.2"&lt;/P&gt;

&lt;P&gt;Language: C&lt;/P&gt;

&lt;P&gt;Code snippets:&lt;/P&gt;

&lt;PRE class="brush:bash;"&gt;...   
 // Ipp Mixer
    Ipp16sc a16scLo[BLOCK_DATA_LEN];
    Ipp16sc *p16scLo = a16scLo;
    Ipp16sc a16scMixOut[BLOCK_DATA_LEN];
    Ipp16sc *p16scMixOut = a16scMixOut;
    Ipp16sc cx16Val;
    cx16Val.re = 1;
    cx16Val.im = 0;
...

    ippStatus = ippsSet_16sc(cx16Val, p16scLo, BLOCK_DATA_LEN);
...

                // Mix Rx input w/LO
                pi16Data = (int16_t *)(p_data + SKIQ_RX_HEADER_SIZE_IN_BYTES);

                ippStatus = ippsMul_16sc_Sfs((Ipp16sc*)pi16Data, p16scLo, p16scMixOut, BLOCK_DATA_LEN, 0);
...&lt;/PRE&gt;

&lt;P&gt;Thanks,&lt;/P&gt;

&lt;P&gt;Grant Schmick&lt;/P&gt;</description>
      <pubDate>Wed, 19 Aug 2015 14:20:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Link-error-on-ippsMul-16sc-Sfs/m-p/1056882#M24141</guid>
      <dc:creator>Grant_S_2</dc:creator>
      <dc:date>2015-08-19T14:20:02Z</dc:date>
    </item>
    <item>
      <title>Hi Grant,</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Link-error-on-ippsMul-16sc-Sfs/m-p/1056883#M24142</link>
      <description>&lt;P&gt;Hi Grant,&lt;/P&gt;

&lt;P&gt;You've forgotten to link libippcore.a library - all other IPP libs depend on it.&lt;/P&gt;

&lt;P&gt;regards, Igor&lt;/P&gt;</description>
      <pubDate>Wed, 19 Aug 2015 14:53:29 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Link-error-on-ippsMul-16sc-Sfs/m-p/1056883#M24142</guid>
      <dc:creator>Igor_A_Intel</dc:creator>
      <dc:date>2015-08-19T14:53:29Z</dc:date>
    </item>
    <item>
      <title>Hi Igor,</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Link-error-on-ippsMul-16sc-Sfs/m-p/1056884#M24143</link>
      <description>&lt;P&gt;Hi Igor,&lt;/P&gt;

&lt;P&gt;Thanks for your response.&amp;nbsp; I'm sure you're correct in that the libippcore.a library is somehow being ignored, but I did specify it in the project the same as all the others, and you can see it in the (very long) gcc command line, where each of the .a files is specified with its full path (I did it that by specifying "Library File" vs. "Library" in the project, and I did it because when I specified "Library" (which generates the compiler line switch "-lippcore", etc., it apparently defaulted to linking the dynamic libraries and caused a runtime error.)&lt;/P&gt;

&lt;P&gt;I subsequently tried copying only the .a files into another directory and generating the "-lippcore" type switch.&amp;nbsp; I had exactly the same errors:&lt;/P&gt;

&lt;PRE class="brush:bash;"&gt;gcc -o dist/Debug/GNU-Linux-x86/timingtestipp build/Debug/GNU-Linux-x86/src/CicDownSamp.o build/Debug/GNU-Linux-x86/src/TimingTestIpp.o -L../lib -L/home/sidekiq/IntelMyWay/lib/intel64static -lsidekiq__x86_64 -lippcc -lippch -lippcore -lippcv -lippdc -lippi -lipps -lippvm -lpthread -lm -lrt -ldl
/home/sidekiq/IntelMyWay/lib/intel64static/libipps.a(jmp_ippsMul_16sc_Sfs_as.o): In function `ippsMul_16sc_Sfs':
/localdisk/buildbot/ipp/8.2-gold/lib_build_l64_st/l64_st/build/.build/linux/obj/intel64/ipps/emerged_smart/pic/dispatcher/jmp_ippsMul_16sc_Sfs_as.s:(.text+0x3): undefined reference to `ippJumpIndexForMergedLibs'
&lt;/PRE&gt;

&lt;P&gt;Any ideas as to what's going wrong?&lt;/P&gt;

&lt;P&gt;Thanks,&lt;/P&gt;

&lt;P&gt;Grant&lt;/P&gt;</description>
      <pubDate>Wed, 19 Aug 2015 17:25:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Link-error-on-ippsMul-16sc-Sfs/m-p/1056884#M24143</guid>
      <dc:creator>Grant_S_2</dc:creator>
      <dc:date>2015-08-19T17:25:33Z</dc:date>
    </item>
    <item>
      <title>Hi Grant,</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/Link-error-on-ippsMul-16sc-Sfs/m-p/1056885#M24144</link>
      <description>&lt;P&gt;Hi Grant,&lt;/P&gt;

&lt;P&gt;Unlike Windows' linker, in Linux the "ld" doesn't perform search for undefined symbols back in the libraries specified in command line. It means, that it's better to provide libraries from the left to the right in order of their dependency.&lt;/P&gt;

&lt;P&gt;In your case the libippcore must be the last in the list of IPP libraries. I would say, that for image processing the dependency is libippcv-&amp;gt;libippi-&amp;gt;libipps-&amp;gt;libippcore. It will be better if you specify libraries in that order.&lt;/P&gt;</description>
      <pubDate>Thu, 20 Aug 2015 05:16:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/Link-error-on-ippsMul-16sc-Sfs/m-p/1056885#M24144</guid>
      <dc:creator>Sergey_K_Intel</dc:creator>
      <dc:date>2015-08-20T05:16:56Z</dc:date>
    </item>
  </channel>
</rss>

