【问题标题】:Why doesn't clang require link.exe in ubuntu?为什么clang在ubuntu中不需要link.exe?
【发布时间】:2019-07-29 04:07:36
【问题描述】:

我是clang的新手。所以我试图在ubuntu和windows中用clang编译一个简单的c程序。

对于 Ubuntu,它运行正常。

说到Windows,它要求Visual Studio的link.exe。

为什么会有这样的差异?

有没有我可以从其他网站、博客获得的信息...

请提出一些答案。

【问题讨论】:

  • 我无法重现这个。 Windows 上的 Clang 根本无法编译我的程序,因为它找不到任何标准头文件。它没有达到链接阶段。

标签: windows ubuntu clang


【解决方案1】:

Ubuntu 与任何其他类 Unix 操作系统一样,具有 ld 程序来链接可执行文件和库。尝试使用 -v 选项运行 clang 以查看它调用了哪些程序。

【讨论】:

  • .so for ubuntu ldcomes 默认值。但是对于 Windows,在执行时它会搜索链接器。这是正确的吗?
  • 在 windows 上取决于环境。如果您在 MinGW 或 Cygwin 环境中工作,它的行为就像在类 Unix 操作系统中一样。如果您正在运行clang-cl,它的行为类似于 Microsoft Visual C++ 编译器并使用link.exe。有很多环境组合可以全部列出。
猜你喜欢
  • 2012-12-28
  • 2021-10-14
  • 1970-01-01
  • 2020-02-21
  • 2020-05-03
  • 1970-01-01
  • 2018-12-15
  • 2016-05-26
  • 2018-03-18
相关资源
最近更新 更多