gpt4 book ai didi

visual-studio-2013 - LNK1158 无法运行 rc.exe x64 Visual Studio

转载 作者:行者123 更新时间:2023-12-04 02:43:19 24 4
gpt4 key购买 nike

我正在尝试在 Visual Studio 中为 64 位平台编译一个简单的程序。在尝试编译时,我收到错误:
链接: fatal error LNK1158:无法运行“rc.exe”

我去过许多讨论线程,其中表明将 rc.exe 和 rcdll.dll 从 Windows Kits 文件夹复制到 VC/bin 文件夹。我这样做无济于事。我突然想到,我的 Visual Studio 版本可能只是没有在我认为它正在寻找这个 rc.exe 文件的目录中查找。有没有办法在 Visual Studio 中识别它正在寻找这个可执行文件的目录?

(有人建议,此问题可能与 Cannot compile with VC++/VS2010 targeting x64: LNK1158: cannot run cvtres.exe 中提供的问题和答案重复。但是,情况似乎并非如此,因为在那里,路径被运行在系统。我没有遇到这个问题,因为当我输入 echo %PATH% 时会显示我的完整路径。话虽如此,该链接确实引导我找到了正确的解决方案,如下所示)

最佳答案

错误确实是我放置 rc.exe 和 rcdll.dll 文件的位置。因为我正在编译到 64 位平台,所以 Visual Studio 使用的是 64 位“交叉编译器”,它不在 $(VSInstallDir)\VC\bin 中,而是在 $(VSInstallDir)\VC\bin 中\x86_amd64 文件夹。

因此,我的问题的解决方案是将 rc.exe 和 rcdll.dll 从 C:\Program Files (x86)\Windows Kits\8.1\bin\x86 文件夹复制到 $(VSInstallDir)\VC\bin\x86_amd64 文件夹.

这样做克服了第一个错误。

但是,在构建时,弹出一个新错误:LNK1158: cannot run 'cvtres.exe'。与我的第一个 rc.exe 错误相比,这个文件实际上已经存在于 $(VSInstallDir)\VC\bin 文件夹中。问题是交叉编译器在它自己的目录中寻找它。所以我只是将该文件从 $(VSInstallDir)\VC\bin 文件夹复制到 $(VSInstallDir)\VC\bin\x86_amd64 文件夹。

一旦我这样做了,我的项目就构建并运行了。

关于visual-studio-2013 - LNK1158 无法运行 rc.exe x64 Visual Studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35215971/

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