You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Linux系统下制作64位gtk-sharp Mono应用?

问题解答
  • 首先解释你看到的file命令输出含义

你编译得到的helloworld.exe是Mono/.NET托管程序集,不是Windows原生PE程序。PE32 executable Intel 80386是.NET程序集的默认头标识,不代表这个程序只能以32位模式运行,只要你编译时没有指定-platform:x86参数,默认生成的是AnyCPU架构的程序集。

  • 关于Ubuntu下用Mono运行的架构
    在64位Ubuntu系统上运行该程序集时,Mono运行时默认会以64位模式加载执行,你可以通过在代码中输出Console.WriteLine(IntPtr.Size);验证:输出为8就是64位模式,输出为4是32位模式。
  • 关于gtk-sharp的64位支持
    gtk-sharp 2和gtk-sharp 3均原生支持Linux 64位平台,包括Ubuntu在内的绝大多数主流Linux发行版的官方软件源都提供了amd64架构的gtk-sharp安装包,不存在不支持64位编程的情况。
  • 如果你需要强制生成64位标识的程序集,可以在编译时添加-platform:x64参数:
mcs helloworld.cs -pkg:gtk-sharp-2.0 -platform:x64

此时再用file命令查看输出,就会显示PE32+ 64位程序集的标识。

内容的提问来源于stack exchange,提问作者Jumogehn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 15:06:01