gpt4 book ai didi

c# - 尝试在 Linux 上使用单声道编译 x64 应用程序会出现 PE32Plus 错误?

转载 作者:太空狗 更新时间:2023-10-29 12:07:49 24 4
gpt4 key购买 nike

完整的错误是

Error CS8088: Your .NET Runtime does not support `PE32Plus'. Please use the latest Mono runtime instead. (CS8088) (test)

这是在 x86_64 linux 系统上安装了 mono 和 monodevelop 作为 x86_64。我尝试编译为 x64 的任何应用程序(包括空测试程序)都会发生这种情况。

我安装了 mono 2.6.7 和 monodevelop 2.4.3,有人可以提供见解吗?

据我所知,PE32Plus 是用于 64 位应用程序的文件类型,但 mono 的网站说它们支持 x64 环境

最佳答案

托管应用程序通过 Linux 上的“mono myApp.exe”运行。指定的“mono”版本决定了应用程序是 64 位还是 32 位。如果您使用 32 位单声道运行时,托管应用程序将以 32 位模式运行。如果您使用 64 位单声道运行时,托管应用程序将以 64 位模式运行。 Windows 支持通过操作系统支持直接启动托管可执行文件,并使用平台信息来确定是将托管代码作为 32 位还是 64 位启动。

因此,平台信息仅在带有 .Net 的 Windows 上很重要。 Mono 忽略此信息。我相信最新的单声道支持使用 x64 平台开关进行编译。如果不是,可以将其编译为 x86 并使用 64 位单声道运行时运行它。

关于c# - 尝试在 Linux 上使用单声道编译 x64 应用程序会出现 PE32Plus 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3303303/

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