gpt4 book ai didi

gcc - Cygwin 上的 C 编译器生成什么?

转载 作者:行者123 更新时间:2023-12-04 22:37:02 25 4
gpt4 key购买 nike

根据以下 identify-compilers.sh 脚本的输出,Cygwin 上似乎可以使用以下 C 编译器。标记为“Cygwin”的那些要求 cygwin1.dll 文件可用。

“pc”和“w64”编译器有什么区别?

为什么没有 x86_64-pc-mingw-gcc.exe 可执行文件?

是否有其他可用的 C 编译器?

/usr/bin/gcc.exe                        64-bit  Cygwin
/usr/bin/i686-pc-cygwin-gcc.exe 32-bit Cygwin
/usr/bin/i686-pc-mingw32-gcc.exe 32-bit
/usr/bin/i686-w64-mingw32-gcc.exe 32-bit
/usr/bin/x86_64-pc-cygwin-gcc.exe 64-bit Cygwin
/usr/bin/x86_64-w64-mingw32-gcc.exe 64-bit

$ cat identify-compilers.sh
#!/bin/bash
for c in $(ls -1 /usr/bin/*gcc.exe); do
echo === compiler: $c
$c -o hello.exe hello.c
objdump -p hello.exe | grep -i "cygwin"
objdump -p hello.exe | grep -i "64$"
rm hello.exe
done

最佳答案

  • gcc只是到 x86_64-pc-cygwin-gcc 的硬链接(hard link)
  • x86_64-pc-cygwin-gcci686-pc-cygwin-gcc就像你说的那样
    Cygwin 编译器,也就是说,创建依赖于的程序的编译器
    cygwin1.dll
  • x86_64-w64-mingw32-gcci686-w64-mingw32-gcc是否提供编译器
    Mingw-w64 project
  • i686-pc-mingw32-gccMinGW project 提供的编译器

  • 您可能想知道,为什么有两个 Mingw 项目?好吧,Mingw-w64 项目是
    开始是因为 MinGW refused to adopt 64 位编译器。这之间
    MSYS2 project 的开始,我考虑MinGW项目
    过时的。

    关于gcc - Cygwin 上的 C 编译器生成什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27344540/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com