在你的andorid设备上运行netcore (Linux Deploy)
最近注意到.net core 的新版本已经开始支持ARM 平台的CPU, 特意去Linux Deploy 中尝试了一下,真的可以运行
Welcome to Ubuntu 16.04 LTS (GNU/Linux 4.9.65-perf+ armv8l) * Documentation: https://help.ubuntu.com/
Ubuntu 16.04 LTS [running via Linux Deploy]
Last login: Thu Oct 4 20:15:39 2018 from 127.0.0.1
root@localhost:~# dotnet Usage: dotnet [options]
Usage: dotnet [path-to-application] Options:
-h|--help Display help.
--info Display .NET Core information.
--list-sdks Display the installed SDKs.
--list-runtimes Display the installed runtimes. path-to-application:
The path to an application .dll file to execute.
root@localhost:~#
此处分享下操作步骤 :
- root 你的安卓设备
- 安装Linux Deploy
- 配置Linux Deploy 安装 Ubuntu
- 安装netcore
- 在Linux中启用root 账户密码登陆
- 推荐的android ssh工具 :juiceSSH
1. root 你的安卓设备
这个根据不同手机厂商有不同的root 方法,我的是OnePlus6 官方给的root工具。
2. 安装Linux Deploy
随便一个应用商店应该都有吧,百度360或者豌豆荚
3.. 配置Linux Deploy 安装 Ubuntu
为了提升安装速度 建议将镜像源修改为清华的:https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/
下图中未截到的默认即可,需要注意的是要勾选ssh,和修改默认用户的登陆密码,架构选择 arm64,其它配置如下:
另外以上的图形子系统非必要,本来打算安装个 vs code ,但是官方没有提供 arm版本~。
4. 安装netcore
从以下地址下载Linux ARM64的安装包:
https://www.microsoft.com/net/download/dotnet-core/2.1
在下载界面下方会有一些官方建议的安装步骤,官方命令的$home代表当前用户, 为了避免产生权限问题我的安装环境是直接挂在到根目录的,你也可以放到如: /etc/dotnet
安装web下载器 wget
apt-get install wget
注意,wget 后跟的是下载地址,这个地址来自于下载页面弹出的下载文件的地址,或者 在Try again上点击右键复制连接
wget https://download.visualstudio.microsoft.com/download/pr/00038a67-bb86-4c39-88df-7c0998002a9e/97de51fd691c68e18ddd3dcaf3d60181/dotnet-sdk-2.1.403-linux-arm64.tar.gz
然后在Linux 系统中执行以下命令:
mkdir -p /etc/dotnet && tar zxf dotnet-sdk-2.1.403-linux-arm64.tar.gz -C /etc/dotnet
export DOTNET_ROOT=$PATH:/etc/dotnet
export PATH=$PATH:/etc/dotnet
配置环境变量:
切换到root用户 sudo apt-get install vim
su root
vim /etc/profile 键盘输入i
按方向键向下到底,在最后一行下面插入以下两行
vim /etc/profile export PATH=$PATH:/etc/dotnet
export DOTNET_ROOT=$PATH:/etc/dotnet
#然后按 ESC键 并输入 :wq
source /etc/profile
运行 dotnet --version 测试
如果报 如下错误:
FailFast:
Couldn't find a valid ICU package installed on the system. Set the configuration flag System.Globalization.Invariant to true if you want to run with no globaliz ation support.
执行如下命令进行安装icu开发包
sudo apt-get install libicu-dev
5. 在Linux中启用root 账户密码登陆
sudo passwd root
然后输入密码
6. 推荐的android 版 ssh工具 :
juiceSSH
原文连接:https://www.cnblogs.com/Qbit/p/andorid-netcore.html
转发请注明出处
在你的andorid设备上运行netcore (Linux Deploy)的更多相关文章
- 【Win 10应用开发】如何知道当前APP在哪个平台设备上运行
在做Win10开发的时候,我们可能经常会需要获得当前程序在在哪个平台设备上运行,用于UI和相关API的调用,那么可以通过什么方式知道当前APP运行的平台呢? 今天这里提供两个方法给大家做参考: 方法一 ...
- Docker在Linux上运行NetCore系列(三)在Linux上使用Docker运行Asp.NetCore
转发请注明此文章作者与路径,请尊重原著,违者必究. 系列文章:https://www.cnblogs.com/alunchen/p/10121379.html 开始说明 上几篇文章都是通过Linux运 ...
- Docker在Linux/Windows上运行NetCore文章系列
Windows系列 因为Window很简单,VS提供界面化配置,所以只写了一篇文章 Docker在Windows上运行NetCore系列(一)使用命令控制台运行.NetCore控制台应用 Linux( ...
- Docker在Linux上运行NetCore系列(五)更新应用程序
转发请注明此文章作者与路径,请尊重原著,违者必究. 本篇文章与其它系列文章不同,为了方便测试,新建了一个ASP.Net Core视图应用. 备注:下面说的应用,只是在容器中运行的应用程序. 查看现在运 ...
- Docker在Linux上运行NetCore系列(四)使用私有Nuget与多个本地包引用运行ASPNetCore
转发请注明此文章作者与路径,请尊重原著,违者必究. 本篇文章演示了使用Dockerfile在Linux(ubuntu16.04)系统上构建ASPNetCore应用,并且在一个解决方案中存在多个项目之间 ...
- Docker在Linux上运行NetCore系列(二)把本地编译好的镜像发布到线上阿里云仓库
转发请注明此文章作者与路径,请尊重原著,违者必究. 系列文章:https://www.cnblogs.com/alunchen/p/10121379.html 开始 本篇文章结束在本地创建完成镜像后, ...
- Docker在Linux上运行NetCore系列(一)配置运行DotNetCore控制台
转发请注明此文章作者与路径,请尊重原著,违者必究. 系列文章:https://www.cnblogs.com/alunchen/p/10121379.html 本篇文章操作系统信息 Linux:ubu ...
- Docker在Windows上运行NetCore系列(一)使用命令控制台运行.NetCore控制台应用
系列文章:https://www.cnblogs.com/alunchen/p/10121379.html 本篇文章操作系统信息 Windows:Window 10 Visual Studio:201 ...
- [转]---UAP中如何判断当前APP在哪个平台设备上运行
在做Win10开发的时候,我们可能经常会需要获得当前程序在在哪个平台设备上运行,用于UI和相关API的调用,那么可以通过什么方式知道当前APP运行的平台呢? 今天这里提供两个方法给大家做参考: 方法一 ...
随机推荐
- 工具类_IsNull
import java.util.List; /** * 判断是否为空 2015-08-17 * * @author lipanquan * */public final class IsNull ...
- java——设计一个支持push,pop,top、在恒定时间内检索最小元素的栈。
普通方法: 需要另外一个栈 用来存放每一时刻的min值 巧妙版: 只需要一个stack,stack中存的是与min的差值 但由于min是两个整数之间的差值,有可能会出现差值超过整数边界值的情况,因此要 ...
- python17 多线程学习
多线程 多任务可以由多进程完成,也可以由一个进程内的多线程完成. 我们前面提到了进程是由若干线程组成的,一个进程至少有一个线程. 由于线程是操作系统直接支持的执行单元,因此,高级语言通常都内置多线程的 ...
- c++中赋值运算符重载为什么要用引用做返回值?
class string{ public: string(const char *str=NULL); string(const string& str); //copy构造函数的参数 ...
- jemalloc报 Unsupported system page size错误
- Murano Weekly Meeting 2016.07.12
Meeting time: 2016.July.12 1:00~2:00 Chairperson: Kirill Zaitsev, from Mirantis Meeting summary: 1. ...
- 深入学习hbase:表,列族,列标识,版本和cell
HBase是面向列的分布式的数据库,和传统的关系型数据库有很大的不同:物理模型和逻辑模型.这里我们要首先讲一下HBase数据库相关的区别于关系型数据库的几个基本概念: 表:HBase ...
- shell 重定向 1> 2> &>
0表示标准输入1表示标准输出2表示标准错误输出> 默认为标准输出重定向,与 1> 相同2>&1 意思是把 标准错误输出 重定向到 标准输出.&>file 意思是 ...
- POJ 3522 ——Slim Span——————【最小生成树、最大边与最小边最小】
Slim Span Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 7102 Accepted: 3761 Descrip ...
- Redis-Service.Stack的初级使用
主要解决Redis服务器带有密码的情况下初始化. 创建RedisHelper类,直接贴代码: using ServiceStack.Redis;using System;class RedisHelp ...