<?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 Error while compiling with -tcollect : ITAC in Software Archive</title>
    <link>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006801#M32429</link>
    <description>&lt;P&gt;I'm facing the following errors while trying to build my application for MIC with -tcollect flag:&lt;/P&gt;

&lt;PRE class="brush:cpp;"&gt;x86_64-k1om-linux-ld: skipping incompatible /opt/intel//itac/8.1.4.045/intel64/itac/lib_impi4/libVT.a when searching for -lVT
x86_64-k1om-linux-ld: cannot find -lVT
x86_64-k1om-linux-ld: skipping incompatible /opt/intel//itac/8.1.4.045/intel64/itac/lib_impi4/libdwarf.a when searching for -ldwarf
x86_64-k1om-linux-ld: cannot find -ldwarf
x86_64-k1om-linux-ld: skipping incompatible /opt/intel//itac/8.1.4.045/intel64/itac/lib_impi4/libelf.a when searching for -lelf
x86_64-k1om-linux-ld: cannot find -lelf
x86_64-k1om-linux-ld: skipping incompatible /opt/intel//itac/8.1.4.045/intel64/itac/lib_impi4/libvtunwind.a when searching for -lvtunwind
x86_64-k1om-linux-ld: cannot find -lvtunwind&lt;/PRE&gt;

&lt;P&gt;I'm compiling with icpc and supporting flags. I had sourced itacvars.sh of host. What am i missing here?&lt;/P&gt;</description>
    <pubDate>Tue, 22 Jul 2014 12:53:09 GMT</pubDate>
    <dc:creator>Ambuj_P_</dc:creator>
    <dc:date>2014-07-22T12:53:09Z</dc:date>
    <item>
      <title>Error while compiling with -tcollect : ITAC</title>
      <link>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006801#M32429</link>
      <description>&lt;P&gt;I'm facing the following errors while trying to build my application for MIC with -tcollect flag:&lt;/P&gt;

&lt;PRE class="brush:cpp;"&gt;x86_64-k1om-linux-ld: skipping incompatible /opt/intel//itac/8.1.4.045/intel64/itac/lib_impi4/libVT.a when searching for -lVT
x86_64-k1om-linux-ld: cannot find -lVT
x86_64-k1om-linux-ld: skipping incompatible /opt/intel//itac/8.1.4.045/intel64/itac/lib_impi4/libdwarf.a when searching for -ldwarf
x86_64-k1om-linux-ld: cannot find -ldwarf
x86_64-k1om-linux-ld: skipping incompatible /opt/intel//itac/8.1.4.045/intel64/itac/lib_impi4/libelf.a when searching for -lelf
x86_64-k1om-linux-ld: cannot find -lelf
x86_64-k1om-linux-ld: skipping incompatible /opt/intel//itac/8.1.4.045/intel64/itac/lib_impi4/libvtunwind.a when searching for -lvtunwind
x86_64-k1om-linux-ld: cannot find -lvtunwind&lt;/PRE&gt;

&lt;P&gt;I'm compiling with icpc and supporting flags. I had sourced itacvars.sh of host. What am i missing here?&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jul 2014 12:53:09 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006801#M32429</guid>
      <dc:creator>Ambuj_P_</dc:creator>
      <dc:date>2014-07-22T12:53:09Z</dc:date>
    </item>
    <item>
      <title>I reproduced the error when</title>
      <link>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006802#M32430</link>
      <description>&lt;P&gt;I reproduced the error when compiling using the compiler driver (icc/ifort) with &lt;STRONG&gt;-mmic&lt;/STRONG&gt; and &lt;STRONG&gt;-tcollect&lt;/STRONG&gt; so this may be what you experienced; however, that does not appear to be the proper method for using this feature for Xeon Phi™.&lt;/P&gt;

&lt;P&gt;See the related post &lt;A href="https://software.intel.com/en-us/forums/topic/456110#comment-1750948" target="_blank"&gt;here &lt;/A&gt;with information that may be helpful.&lt;/P&gt;

&lt;P&gt;I also requested help from someone more knowledgeable with this feature so please stay tuned for their reply.&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jul 2014 15:51:08 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006802#M32430</guid>
      <dc:creator>Kevin_D_Intel</dc:creator>
      <dc:date>2014-07-22T15:51:08Z</dc:date>
    </item>
    <item>
      <title>Some guidance received</title>
      <link>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006803#M32431</link>
      <description>&lt;P&gt;Some guidance received suggested this may be a defect with the compiler driver linking the "intel64" libraries where it should have linked the "mic" version based on the &lt;STRONG&gt;-mmic&lt;/STRONG&gt;.&lt;/P&gt;

&lt;P&gt;On your compilation line, can you try adding: &lt;STRONG&gt;-L/opt/intel//itac/8.1.4.045/mic/lib&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jul 2014 16:30:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006803#M32431</guid>
      <dc:creator>Kevin_D_Intel</dc:creator>
      <dc:date>2014-07-22T16:30:17Z</dc:date>
    </item>
    <item>
      <title>Hi Kevin,</title>
      <link>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006804#M32432</link>
      <description>&lt;P&gt;Hi Kevin,&lt;BR /&gt;
	Adding&amp;nbsp;&lt;SPAN style="font-weight: 700; font-size: 11.818181991577148px; line-height: 16.363636016845703px;"&gt;-L/opt/intel//itac/8.1.4.045/mic/lib&amp;nbsp;&lt;/SPAN&gt;didn't solve the problem. I'm getting new errors:&lt;/P&gt;

&lt;PRE class="brush:plain;"&gt;ld: skipping incompatible /opt/intel/itac/latest/mic/lib/libVT.a when searching for -lVT
ld: skipping incompatible /opt/intel/itac/latest/mic/lib/libdwarf.a when searching for -ldwarf
ld: skipping incompatible /opt/intel/itac/latest/mic/lib/libelf.a when searching for -lelf
ld: skipping incompatible /opt/intel/itac/latest/mic/lib/libvtunwind.a when searching for -lvtunwind
/opt/intel/itac/8.1.2.033/intel64/itac/lib_impi4/libVT.a(VT_timer.o): In function `VT_TimerClockMPI':
/nfs/inn/disks/nn-ssg_tcar_mpi_2Tb_unix/scratch1/ITAC/weeklytesting/ITAC_P_8_1_2_RC2/tracing/vampirtrace/src/generic/VT_timer.c:(.text+0x25): undefined reference to `PMPI_Wtime'
/opt/intel/itac/8.1.2.033/intel64/itac/lib_impi4/libVT.a(VT_timer.o): In function `VT_TimerScopeMPI':
/nfs/inn/disks/nn-ssg_tcar_mpi_2Tb_unix/scratch1/ITAC/weeklytesting/ITAC_P_8_1_2_RC2/tracing/vampirtrace/src/generic/VT_timer.c:(.text+0x5b): undefined reference to `PMPI_Attr_get'

and so on...

x86_64-k1om-linux-ld: /opt/intel/itac/latest/mic/lib/libVT.a(VT_core.o): relocation R_X86_64_32 against `.rodata.str1.4' can not be used when making a shared object; recompile with -fPIC
/opt/intel/itac/latest/mic/lib/libVT.a: could not read symbols: Bad value&lt;/PRE&gt;

&lt;P&gt;PS: fPIC flag is already present in my arguments.&lt;/P&gt;</description>
      <pubDate>Wed, 23 Jul 2014 06:12:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006804#M32432</guid>
      <dc:creator>Ambuj_P_</dc:creator>
      <dc:date>2014-07-23T06:12:15Z</dc:date>
    </item>
    <item>
      <title>Ok, can you please share with</title>
      <link>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006805#M32433</link>
      <description>&lt;P&gt;Ok, can you please share with me the complete compilation line you are using?&lt;/P&gt;</description>
      <pubDate>Wed, 23 Jul 2014 09:55:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006805#M32433</guid>
      <dc:creator>Kevin_D_Intel</dc:creator>
      <dc:date>2014-07-23T09:55:36Z</dc:date>
    </item>
    <item>
      <title>Hi Kevin,</title>
      <link>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006806#M32434</link>
      <description>&lt;P&gt;Hi Kevin,&lt;BR /&gt;
	&lt;BR /&gt;
	I've sent you the compilation line.&lt;/P&gt;</description>
      <pubDate>Wed, 23 Jul 2014 10:39:15 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006806#M32434</guid>
      <dc:creator>Ambuj_P_</dc:creator>
      <dc:date>2014-07-23T10:39:15Z</dc:date>
    </item>
    <item>
      <title>In last collection of link</title>
      <link>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006807#M32435</link>
      <description>&lt;P&gt;In last collection of link failures you posted, most came from "&lt;STRONG&gt;ld&lt;/STRONG&gt;" which is the host (CPU)-side linker and it’s complaining about not understanding libraries built for the Xeon Phi™ which is not surprising. Only the last message in that last collection came from the &lt;STRONG&gt;x86_64-k1om-linux-ld&lt;/STRONG&gt; which is the expected linker that is used with &lt;STRONG&gt;-mmic&lt;/STRONG&gt;. The initial link errors you posted also came from the &lt;STRONG&gt;x86_64-k1om-linux-ld&lt;/STRONG&gt;.&lt;/P&gt;

&lt;P&gt;So, I’m confused how your build produced a mix of linker errors when using &lt;STRONG&gt;-mmic&lt;/STRONG&gt;. From your last collection of linker errors it appears the attempt to add the path to the “mic” libraries went badly. Maybe the &lt;STRONG&gt;-mmic&lt;/STRONG&gt; option was left out and so it did not use the correct &lt;STRONG&gt;ld&lt;/STRONG&gt;, or maybe the build process includes multiple link steps to build both host and MIC executable separately and the path to the MIC libraries was accidentally included in the host link, maybe you can tell?&lt;/P&gt;

&lt;P&gt;When I’m using only the &lt;STRONG&gt;icc &lt;/STRONG&gt;driver and compiling with &lt;STRONG&gt;-tcollect -mmic&lt;/STRONG&gt; I can produce the first set of &lt;STRONG&gt;x86_64-k1om-linux-ld&lt;/STRONG&gt; errors you posted. When only the “mic” library path is added as I suggested the link suffers a number of undefined references to MPI routines like:&lt;/P&gt;

&lt;PRE class="brush:bash;"&gt;/opt/intel/itac/8.1.4.045/mic/lib/libVT.a(VT_timer.o): In function `VT_TimerClockMPI':
/nfs/inn/disks/nn-ssg_tcar_mpi_2Tb_unix/scratch1/ITAC/weeklytesting/ITAC_P_8_1_4_RC2/tracing/vampirtrace/src/generic/VT_timer.c:(.text+0x15): undefined reference to `PMPI_Wtime'&lt;/PRE&gt;

&lt;P&gt;When adding a path/reference to the MPI library, I can successfully link. In other words, this command-line succeeds:&lt;/P&gt;

&lt;PRE class="brush:bash;"&gt;icc  -tcollect -mmic test.c -L/opt/intel/itac/8.1.4.045/mic/lib -L/opt/intel/impi/4.1.3.049/mic/lib -lmpi&lt;/PRE&gt;

&lt;P&gt;When I compile using the mpi compiler wrapper (i.e. &lt;STRONG&gt;mpiicc -tcollect -mmic test.c&lt;/STRONG&gt;) the compile/link also completes successfully.&lt;/P&gt;

&lt;P&gt;The need to add the path to the “mic” itac libraries is a compiler driver defect that I will submit to our developers.&lt;/P&gt;

&lt;P&gt;Let me check again with someone more knowledgeable about these tools to see whether it is expected to be able to only use the compiler driver (icc) with &lt;STRONG&gt;-tcollect&lt;/STRONG&gt; and the path to the MPI libraries as I showed. In the mean-time, you might try adding the path/reference to the MPI libraries also after sorting out why your build produced a mix of errors from both host/MIC linkers.&lt;/P&gt;</description>
      <pubDate>Thu, 24 Jul 2014 12:18:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006807#M32435</guid>
      <dc:creator>Kevin_D_Intel</dc:creator>
      <dc:date>2014-07-24T12:18:00Z</dc:date>
    </item>
    <item>
      <title>The guidance from others is</title>
      <link>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006808#M32436</link>
      <description>&lt;P&gt;The guidance from others is to use the MPI compiler wrappers, mpiicc/mpiicpc for now until the icc driver is fixed. So for the example I showed earlier, something like:&lt;/P&gt;

&lt;P&gt;For the Xeon (host) build: &lt;STRONG&gt;mpiicc -tcollect test.c&lt;/STRONG&gt;&lt;BR /&gt;
	For the Xeon Phi (coprocessor) native build: &lt;STRONG&gt;mpiicc -tcollect -mmic test.c&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 24 Jul 2014 18:03:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Software-Archive/Error-while-compiling-with-tcollect-ITAC/m-p/1006808#M32436</guid>
      <dc:creator>Kevin_D_Intel</dc:creator>
      <dc:date>2014-07-24T18:03:38Z</dc:date>
    </item>
  </channel>
</rss>

