c++ - 与 clang 链接时 MinGW ld 的警告
问题描述
我正在尝试使用clang
作为编译驱动程序和MinGw ld
Windows 上的链接器来执行一个简单的 c++ 程序。
我知道 windows 上的 clang 会寻找 MSVC 链接器link.exe
,但link.exe
不支持链接器脚本所以我正在尝试使用这个简单的程序 main.cpp 的不同选项
#include <iostream>
int main()
{
std::cout << "hello world";
return 0;
}
选项1
clang++ main.cpp -o main.exe -fuse-ld=lld-link
所以在这里我用名为的选项更改了链接器-fuse-ld=lld-link
当我执行 main.exe 时,我将毫无问题地获得预期的输出。
选项 2
clang++ main.cpp -o main.exe -fuse-ld=ld
我会收到以下错误
Warning: corrupt .drectve at end of def file
C:\MinGW\bin\ld.exe: warning: cannot find entry symbol faultlib:libcmt; defaulting to 00401000
即使这些是警告,也不会生成 main.exe。
链接时如何获取可执行文件MinGW linker ld
?
请提供任何解决方案。
解决方案
推荐阅读
- react-native - React Native 中嵌套元素的可访问性焦点顺序不正确
- node.js - 如何检查交易是否被取消
- android-studio - Android 许可证状态未知
- sparql - 使用属性和 itemlabel 查询 wikidata
- java - 如何在写入过程中出现异常回滚/恢复 IO 操作?- 爪哇
- java - 如何在 ElementType.PARAMETER 注释上使用方面
- unity3d - 如何在脚本的可寻址窗口中分配可寻址标签
- python - Python:查找文件中最长的句子
- c# - HttpWebRequest.GetRequestStream 返回的流不会立即在 .NET Core 中发送数据
- sql-server - 多个外键到单个主键关系数据库