英特尔是否在 Linux 上提供自己的 C 库?
Does Intel provide its own C library on Linux?
在 Linux
上编译以下代码
#include <stdio.h>
void main() {
printf("Hello World\n");
return;
}
使用 icc
版本 15.0.0
icc -no-cxxlib -no-gcc-include-dir test.c
生成针对 glibc linked 的动态可执行文件:
ldd ./a.out
linux-vdso.so.1 => (0x00007ffc601b6000)
libm.so.6 => /lib64/libm.so.6 (0x00000038f0c00000)
libc.so.6 => /lib64/libc.so.6 (0x00000038efc00000)
libdl.so.2 => /lib64/libdl.so.2 (0x00000038f0400000)
/lib64/ld-linux-x86-64.so.2 (0x00000038ef800000)
Fortran使用ifort
版本15.0.0和对应代码也是如此
program test
print *,'Hello world'
end program
用
编译
ifort -no-cxxlib -no-gcc-include-dir test.F90
同样,生成的库是针对 glibc link编辑的:
ldd ./a.out
linux-vdso.so.1 => (0x00007fff483da000)
libm.so.6 => /lib64/libm.so.6 (0x00000038f0c00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00000038f0000000)
libc.so.6 => /lib64/libc.so.6 (0x00000038efc00000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00000038f2c00000)
libdl.so.2 => /lib64/libdl.so.2 (0x00000038f0400000)
/lib64/ld-linux-x86-64.so.2 (0x00000038ef800000)
tl;dr; 英特尔编译器是否在 Linux 上提供了自己的 C 库?如果是,我怎么能link反对呢?
我知道 Windows 版本有(曾经?)一个与 compiler/runtime 库一起提供的替代 C 库。但是,我在 Linux 上找不到 Intel 提供的任何此类库。
英特尔不提供任何 glibc 或 libstdc++。在多年前的安腾之初,有 dinkumware ,英特尔为 MIC 提供了带有 MPSS 的库。对于 Windows,需要 Microsoft SDK。
IIRC Icc 15.0 通常是 运行,路径上有 g++ 4.7 或 4.9。
在 Linux
上编译以下代码#include <stdio.h>
void main() {
printf("Hello World\n");
return;
}
使用 icc
版本 15.0.0
icc -no-cxxlib -no-gcc-include-dir test.c
生成针对 glibc linked 的动态可执行文件:
ldd ./a.out
linux-vdso.so.1 => (0x00007ffc601b6000)
libm.so.6 => /lib64/libm.so.6 (0x00000038f0c00000)
libc.so.6 => /lib64/libc.so.6 (0x00000038efc00000)
libdl.so.2 => /lib64/libdl.so.2 (0x00000038f0400000)
/lib64/ld-linux-x86-64.so.2 (0x00000038ef800000)
Fortran使用ifort
版本15.0.0和对应代码也是如此
program test
print *,'Hello world'
end program
用
编译ifort -no-cxxlib -no-gcc-include-dir test.F90
同样,生成的库是针对 glibc link编辑的:
ldd ./a.out
linux-vdso.so.1 => (0x00007fff483da000)
libm.so.6 => /lib64/libm.so.6 (0x00000038f0c00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00000038f0000000)
libc.so.6 => /lib64/libc.so.6 (0x00000038efc00000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00000038f2c00000)
libdl.so.2 => /lib64/libdl.so.2 (0x00000038f0400000)
/lib64/ld-linux-x86-64.so.2 (0x00000038ef800000)
tl;dr; 英特尔编译器是否在 Linux 上提供了自己的 C 库?如果是,我怎么能link反对呢?
我知道 Windows 版本有(曾经?)一个与 compiler/runtime 库一起提供的替代 C 库。但是,我在 Linux 上找不到 Intel 提供的任何此类库。
英特尔不提供任何 glibc 或 libstdc++。在多年前的安腾之初,有 dinkumware ,英特尔为 MIC 提供了带有 MPSS 的库。对于 Windows,需要 Microsoft SDK。 IIRC Icc 15.0 通常是 运行,路径上有 g++ 4.7 或 4.9。