关于LINUX ARM .net AOT开发、验证环境软硬件选取

      .net AOT在ARM框架平台生成发布需要ARM64环境,网上部分是使用了Qemu虚拟机,考虑部分程序需要实机进行验证,最好就是有实物ARM设备来进行。

     之前搭建LINUX ARM开发环境,找了好几个ARM硬件平台,包括:

1.树莓派

2.USB WIFI 高通410

3.NasBoard RK3568

    主要系统使用的是ubuntu、debian 或 armbian(debian系),没有选择一些正规的开发板主要是因为一个太贵,新的树莓派4也不建议,太贵了(手上的树莓派是15年入的一个老树莓派2,吃灰很多年了,pi2是arm32架构,能够运行.net core \6\7\8程序,不能发布或运行AOT程序),另外就是暂时没有各种外部接口需求,主要做网络应用开发调试,后面两种硬件需要的人可以搜下相关信息,某鱼上很多,包括还有硬件爱好者做的外围扩展硬件。

 

    近期发现一个更好的平台,就是旧的小米手机,以当前手上的红米Note7为例,性能相对上述平台强了太多,而且旧手机也可以废物利用。

 

    小米手机优势主要支持官方申请解锁Bootloader,玩机教程也比较多,主要说下开发环境搭建思路供参考,详细教程可自行检索。

小米手机搭建debian的环境思路:

1.官方申请解锁Bootloader

2.刷入对应手机的TWRP

3.使用TWRP实现magisk刷入,实现手机的Root

4.安装busybox(需要root)

5.安装linux deploy(需要root)

6.通过linux deploy安装debian10(目前最新只支持到了10)

7.使用SSH终端进行连接使用

 

一些细节供参考:

手机这边降级了MIUI11(android10),并使用magisk刷入了关闭升级的包。

 

这边尝试了之前搭建的dotnet8环境下的AOT编译,完全可以实现,速度上也相对之前的平台要来的更快,非常适合做dotnet AOT生成发布环境。

Debian10需要解决的问题主要是解决GLIBC2.29依赖问题,可以手动编译并安装。

参考:https://bbs.deepin.org/post/234462?offset=0&limit=20#comment

 

----------------------------------------------

更新--2025-0206--

最新的.net9.0支持了arm32的AOT支持,原来的树莓派2也可以进行AOT发布,这对于一些老旧的arm平台来说也是个好消息,写些小型的工控程序做外设控制和数据采样还是挺方便的。

posted @ 2023-10-25 10:30  猿妙不可言  阅读(406)  评论(0)    收藏  举报