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

Linux(Manjaro)下C#项目生成可执行文件方法咨询

在Manjaro Linux下为C#项目生成可执行文件并运行DLL

为什么编译后只生成DLL?

默认情况下,.NET Core/.NET 5+的控制台项目采用依赖框架模式编译,产出的是跨平台DLL文件,需要依赖系统中已安装的.NET运行时才能执行。若要生成无需依赖系统运行时的独立可执行文件,需切换到独立部署模式。

生成独立可执行文件的步骤

1. 确认项目配置

先在项目根目录执行命令查看目标框架版本:

dotnet --info

或者直接查看项目根目录的.csproj文件,找到<TargetFramework>字段(比如net6.0、net7.0)。

2. 发布独立可执行文件

在项目根目录运行以下发布命令,指定Linux x64平台(Manjaro默认是x64架构):

dotnet publish -c Release -r linux-x64 --self-contained true

参数说明:

  • -c Release:以Release模式编译,生成优化后的程序
  • -r linux-x64:指定目标运行环境为Linux x64
  • --self-contained true:打包包含.NET运行时,生成的可执行文件无需系统预先安装.NET

发布完成后,可执行文件会存放在bin/Release/<你的目标框架版本>/linux-x64/publish/目录下,文件名和项目名称一致,直接执行即可:

./你的项目名称

3. 配置项目默认发布参数(可选)

如果不想每次发布都输入长命令,可修改.csproj文件,添加以下配置:

<PropertyGroup>
  <RuntimeIdentifier>linux-x64</RuntimeIdentifier>
  <SelfContained>true</SelfContained>
</PropertyGroup>

之后只需运行dotnet publish就能自动生成Linux平台的独立可执行文件。

直接运行现有DLL文件

如果暂时不需要生成独立可执行文件,也可以用.NET运行时直接执行DLL:

dotnet bin/Debug/<你的目标框架版本>/你的项目名称.dll

注意:运行前需确保Manjaro已安装对应版本的.NET运行时,安装命令:

  • 仅安装运行时(用于执行程序):
sudo pacman -S dotnet-runtime
  • 安装SDK(用于编译项目):
sudo pacman -S dotnet-sdk

内容的提问来源于stack exchange,提问作者عبدالله اسامه

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 12:50:26