<?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 pthread_atfork link error with IPP in Intel® Integrated Performance Primitives</title>
    <link>https://community.intel.com/t5/Intel-Integrated-Performance/pthread-atfork-link-error-with-IPP/m-p/830094#M5478</link>
    <description>I am statically linking to the ipp, umc &amp;amp; uic libraries.I am using IPP 6.1.6.063 and have downloaded the 6.1 sample code. I am using g++.&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;I can build my own shared object that statically links to ipp and umc, but when I try to build an application that links to my shared object, I get the following link error:&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;/opt/intel/ipp/6.1.6.063/ia32/sharedlib/libiomp5.so: undefined reference to `pthread_atfork'&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;I did see the following note in this article:&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;A href="http://software.intel.com/en-us/articles/how-to-build-ipp-application-in-linux-environment/" target="_blank"&gt;http://software.intel.com/en-us/articles/how-to-build-ipp-application-in-linux-environment/&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;B&gt;Error message&lt;/B&gt;: /opt/intel/ipp/6.0.0.045/em64t/sharedlib/libiomp5.so: &lt;B&gt;undefined reference to `pthread_atfork' &lt;/B&gt;
&lt;UL&gt;
&lt;LI&gt;Please make sure to link "-lpthread" library in your command line.&lt;/LI&gt;&lt;/UL&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;BR /&gt;I do have -lpthread specified, but the error still occurs. Here are my ipp library lists:&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV id="_mcePaste"&gt;&lt;BR /&gt;IPP_LIBS = "${IPP_DIR}/lib/libippdcemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippdcmerged$(IPP_FILE_EXT).a""${IPP_DIR}/lib/libippccemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippccmerged$(IPP_FILE_EXT).a""${IPP_DIR}/lib/libippcvemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippcvmerged$(IPP_FILE_EXT).a""${IPP_DIR}/lib/libippjemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippjmerged$(IPP_FILE_EXT).a" "${IPP_DIR}/lib/libippvcemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippvcmerged$(IPP_FILE_EXT).a""${IPP_DIR}/lib/libippiemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippimerged$(IPP_FILE_EXT).a" "${IPP_DIR}/lib/libippsemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippsmerged$(IPP_FILE_EXT).a" "${IPP_DIR}/lib/libippcore$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/sharedlib/libiomp5.so"&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;UIC_LIBS = "${UIC_IMAGE_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/uic_core_l.a" \\&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt; "${UIC_IMAGE_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/uic_io_l.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UIC_IMAGE_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/uic_jpeg_enc_l.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UIC_IMAGE_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/uic_jpeg_dec_l.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UIC_IMAGE_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/uic_jpeg_common_l.a"&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;UMC_LIBS ="${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libmpeg4_mux.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libscene_analyzer.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libh264_enc.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libcolor_space_converter.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libumc_io.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libmedia_buffers.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libcommon.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libumc.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libvm_plus.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libvm.a"&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;I have added -lpthread before any of the ipp, uic or umc library lists.&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;Can anyone tell me what it is I am doing wrong?&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Thanks.&lt;/DIV&gt;</description>
    <pubDate>Tue, 03 May 2011 18:55:58 GMT</pubDate>
    <dc:creator>frenet</dc:creator>
    <dc:date>2011-05-03T18:55:58Z</dc:date>
    <item>
      <title>pthread_atfork link error with IPP</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/pthread-atfork-link-error-with-IPP/m-p/830094#M5478</link>
      <description>I am statically linking to the ipp, umc &amp;amp; uic libraries.I am using IPP 6.1.6.063 and have downloaded the 6.1 sample code. I am using g++.&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;I can build my own shared object that statically links to ipp and umc, but when I try to build an application that links to my shared object, I get the following link error:&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;/opt/intel/ipp/6.1.6.063/ia32/sharedlib/libiomp5.so: undefined reference to `pthread_atfork'&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;I did see the following note in this article:&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;A href="http://software.intel.com/en-us/articles/how-to-build-ipp-application-in-linux-environment/" target="_blank"&gt;http://software.intel.com/en-us/articles/how-to-build-ipp-application-in-linux-environment/&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;B&gt;Error message&lt;/B&gt;: /opt/intel/ipp/6.0.0.045/em64t/sharedlib/libiomp5.so: &lt;B&gt;undefined reference to `pthread_atfork' &lt;/B&gt;
&lt;UL&gt;
&lt;LI&gt;Please make sure to link "-lpthread" library in your command line.&lt;/LI&gt;&lt;/UL&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;BR /&gt;I do have -lpthread specified, but the error still occurs. Here are my ipp library lists:&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV id="_mcePaste"&gt;&lt;BR /&gt;IPP_LIBS = "${IPP_DIR}/lib/libippdcemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippdcmerged$(IPP_FILE_EXT).a""${IPP_DIR}/lib/libippccemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippccmerged$(IPP_FILE_EXT).a""${IPP_DIR}/lib/libippcvemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippcvmerged$(IPP_FILE_EXT).a""${IPP_DIR}/lib/libippjemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippjmerged$(IPP_FILE_EXT).a" "${IPP_DIR}/lib/libippvcemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippvcmerged$(IPP_FILE_EXT).a""${IPP_DIR}/lib/libippiemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippimerged$(IPP_FILE_EXT).a" "${IPP_DIR}/lib/libippsemerged$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/lib/libippsmerged$(IPP_FILE_EXT).a" "${IPP_DIR}/lib/libippcore$(IPP_FILE_EXT).a" \\&lt;/DIV&gt;&lt;DIV id="_mcePaste"&gt; "${IPP_DIR}/sharedlib/libiomp5.so"&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;UIC_LIBS = "${UIC_IMAGE_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/uic_core_l.a" \\&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt; "${UIC_IMAGE_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/uic_io_l.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UIC_IMAGE_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/uic_jpeg_enc_l.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UIC_IMAGE_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/uic_jpeg_dec_l.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UIC_IMAGE_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/uic_jpeg_common_l.a"&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;UMC_LIBS ="${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libmpeg4_mux.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libscene_analyzer.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libh264_enc.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libcolor_space_converter.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libumc_io.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libmedia_buffers.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libcommon.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libumc.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libvm_plus.a" \\&lt;/DIV&gt;&lt;DIV&gt; "${UMC_AVCODEC_DIR}/_bin/linux$(IPP_LIB_ARCH)_/lib/libvm.a"&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;I have added -lpthread before any of the ipp, uic or umc library lists.&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;Can anyone tell me what it is I am doing wrong?&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Thanks.&lt;/DIV&gt;</description>
      <pubDate>Tue, 03 May 2011 18:55:58 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/pthread-atfork-link-error-with-IPP/m-p/830094#M5478</guid>
      <dc:creator>frenet</dc:creator>
      <dc:date>2011-05-03T18:55:58Z</dc:date>
    </item>
    <item>
      <title>pthread_atfork link error with IPP</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/pthread-atfork-link-error-with-IPP/m-p/830095#M5479</link>
      <description>Adding -lpthread to the application that links to my shared object fixes this. Is there any way to avoid this? Is there a way to link to pthread in my shared object without requiring users to link to pthread in their own applications?</description>
      <pubDate>Tue, 03 May 2011 21:44:10 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/pthread-atfork-link-error-with-IPP/m-p/830095#M5479</guid>
      <dc:creator>frenet</dc:creator>
      <dc:date>2011-05-03T21:44:10Z</dc:date>
    </item>
    <item>
      <title>pthread_atfork link error with IPP</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/pthread-atfork-link-error-with-IPP/m-p/830096#M5480</link>
      <description>This is resolved. &lt;BR /&gt;&lt;BR /&gt;Listing -lpthread after the IPP libraries fixed this issue.</description>
      <pubDate>Wed, 04 May 2011 16:06:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/pthread-atfork-link-error-with-IPP/m-p/830096#M5480</guid>
      <dc:creator>frenet</dc:creator>
      <dc:date>2011-05-04T16:06:33Z</dc:date>
    </item>
    <item>
      <title>pthread_atfork link error with IPP</title>
      <link>https://community.intel.com/t5/Intel-Integrated-Performance/pthread-atfork-link-error-with-IPP/m-p/830097#M5481</link>
      <description>Hi,&lt;BR /&gt;Nice to know that it works fine, In Linux, linking order is very important.&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;Naveen Gv</description>
      <pubDate>Thu, 05 May 2011 10:37:59 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Integrated-Performance/pthread-atfork-link-error-with-IPP/m-p/830097#M5481</guid>
      <dc:creator>Naveen_G_Intel</dc:creator>
      <dc:date>2011-05-05T10:37:59Z</dc:date>
    </item>
  </channel>
</rss>

