title: Does Intel provide its own C library on Linux?
body: <p>Compiling the following code on Linux</p>
  
  <pre><code>#include &lt;stdio.h&gt;
  
  void main() {
    printf("Hello World\n");
    return;
  }
  </code></pre>
  
  <p>using <code>icc</code> version 15.0.0</p>
  
  <pre><code>icc -no-cxxlib -no-gcc-include-dir test.c
  </code></pre>
  
  <p>produces a dynamic executable that is linked against glibc:</p>
  
  <pre><code>ldd ./a.out 
      linux-vdso.so.1 =&gt;  (0x00007ffc601b6000)
      libm.so.6 =&gt; /lib64/libm.so.6 (0x00000038f0c00000)
      libc.so.6 =&gt; /lib64/libc.so.6 (0x00000038efc00000)
      libdl.so.2 =&gt; /lib64/libdl.so.2 (0x00000038f0400000)
      /lib64/ld-linux-x86-64.so.2 (0x00000038ef800000)
  </code></pre>
  
  <hr>
  
  <p>The same is true for Fortran using <code>ifort</code> version 15.0.0 and the corresponding code</p>
  
  <pre><code>program test
    print *,'Hello world'
  end program
  </code></pre>
  
  <p>compiled with </p>
  
  <pre><code>ifort -no-cxxlib -no-gcc-include-dir test.F90
  </code></pre>
  
  <p>Again, the resulting library is linked against glibc:</p>
  
  <pre><code>ldd ./a.out 
      linux-vdso.so.1 =&gt;  (0x00007fff483da000)
      libm.so.6 =&gt; /lib64/libm.so.6 (0x00000038f0c00000)
      libpthread.so.0 =&gt; /lib64/libpthread.so.0 (0x00000038f0000000)
      libc.so.6 =&gt; /lib64/libc.so.6 (0x00000038efc00000)
      libgcc_s.so.1 =&gt; /lib64/libgcc_s.so.1 (0x00000038f2c00000)
      libdl.so.2 =&gt; /lib64/libdl.so.2 (0x00000038f0400000)
      /lib64/ld-linux-x86-64.so.2 (0x00000038ef800000)
  </code></pre>
  
  <hr>
  
  <p><strong>tl;dr;</strong> Do the Intel compilers provide their own C library on Linux? If yes, how can I link against it? </p>
  
  <p>I know that for the Windows version, there is (was?) an alternative C library shipped with the compiler/runtime libraries. However, I couldn't find any library of that kind shipped by Intel on Linux. </p>