.net8 AOT笔记
近期。net8发布了第一个rc版本,刚好近期在做一些.net6下的一些程序验证,顺带试了下。
以x64为例
系统ubuntu22.4 x64
下载.net8 sdk
https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-8.0.100-rc.1-linux-x64-binaries
安装.net8
mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-8.0.100-rc.1.23463.5-linux-x64.tar.gz -C $HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet
测试安装配置是否成功
dotnet –info
进入代码project目录(不是sln目录,而是csproj目录)
常规发布命令
dotnet publish -r linux-x64 -c Release
AOT发布(-p:PublishAot=true 参数)
dotnet publish -r linux-x64 -c Release -p:PublishAot=true
如果报错,则需安装依赖
sudo apt-get install clang zlib1g-dev
ARM64环境搭建
注意下载ARM64的包
这边测试平台主要是高通410平台debian11、rk3568 Armbian (23.08.0-trunk),均为arch64环境
下载SDK路径
https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-8.0.100-rc.1-linux-arm64-binaries
安装SDK
mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-8.0.100-rc.1.23463.5-linux-arm64.tar.gz -C $HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet
常规发布命令
dotnet publish -r linux-arm64 -c Release
AOT发布(-p:PublishAot=true 参数)
dotnet publish -r linux-arm64 -c Release -p:PublishAot=true
如果报错,则需安装依赖
sudo apt-get install clang zlib1g-dev
注意事项:
发布出来的软件如果是在较高的linux中AOT编译出来的,则软件适用用范围为编辑环境的linux版本或更高版本,否则在低版本linux中可能因为依赖导致无法运行。
比如Armbian23.08上编译的AOT程序将无法运行到debian11中,提示GLIBC版本问题
./XxxSimulator: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by ./XxxSimulator)
./XxxSimulator: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by ./XxxSimulator)
所以AOT发布尽量选取最低支持的平台上进行,以便支持更多的运行平台
标签:net8,x64,笔记,AOT,linux,dotnet,HOME From: https://www.cnblogs.com/taozebra/p/17755309.html