Arm架构环境配置
Python3.7
一般自带或者自己安装,我的是系统自带的3.7.3。
Python3.8
1. 安装python3.8,但是不要卸载系统以前的python3.7.3版本,相当于新增一个python3.8版本在系统中。
#下载python3.8
wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz#解压python3.8
tar zxvf Python-3.8.0.tgz
#cd 到解压后的目录中
cd Python-3.8.0
2. –prefix 执行编译后的安装路径,可以设定自己的安装目录,也可以不指定,这样的话,需要root权限才能执行后续的 install。建议指定,可以把所有资源文件放入下面指定的目录中,从而不会杂乱,防止替换AidLux中自带的 Python3.7.3。
#指定安装路径
./configure --prefix=/home/python3.8
3. 执行编译,由于测试手机是高通870,所以选用的8线程,提高编译速度,如果手机较差,就用-j2或-j4,大概需要几分钟。
make -j8
如果这里报错,可能是第 2 步未成功,尝试重复第 2 步操作。
编译完成:
4. 执行安装命令 altinstall 与 install 的区别在于,altinstall 跳过创建Python链接和手册页链接,它安装后可以与树莓派自带的 Python3.7.3 共存,不会出现冲突和替换,建议使用 altinstall。
make altinstall
等待执行后,就已经安装好了:
提示:如果在 ./configure 的时候指定了 –prefix 选项,如果路径没有读写权限,则可能安装失败。保险起见,指定 –prefix 且安装之后,请检查一下是否有报错,或者指定路径下是否安装成功
5. 配置python3.8的环境变量
/home/python3.8/bin/是测试中python安装的路径,如果有修改请更改该路径。
#配置Python3.8环境变量
echo 'export PATH=$PATH:/home/python3.8/bin/' >> /root/.bashrc && source ~/.bashrc
python3.8
效果如下图:
C/C++
因为c++插件的只支持x86,不支持arm64,但是换了clang编译器后,c++的插件就支持arm64了,同时支持智能提醒,智能补齐,智能函数和变量提醒
1. 安装gcc g++ clang gdb
apt install -y gcc g++ clang gdb
2. 在vscode中装一个插件clangd
3. 运行下面代码hello.cpp
#include <iostream>//头文件
using namespace std;
int main()//主函数
{
cout << "Hello world!\n";//cout是输出,\n是换行符
return 0;//结束程序
}
compile-base
这个包将安装cmake、make、gcc、g++、python3-dev、cython来编译PIP3或C++不支持的包源到arm64平台。
gcc
gcc v8.3.0,GNU C编译器,可移植的C优化编译器。
g++
g++ v8.3.0-1, GNU C++编译器,适合C++的优化编译器。
cmake
cmake v3.13.4-1,CMake是一个跨平台、开源的构建系统生成器。
make
make v4.2.1,GNU Make是一个实用程序,它控制从程序的源文件生成程序的可执行文件和其他目标文件。
Rust
#安装
apt install rustc rust-src rust-gdb rust-doc rustdoc-stripper
vscode中安装rust的插件:
测试rust,helllo world
php
第一步 安装php
换源,清华源或华为源。
#安装
apt install php
第二步 查看 php版本
php -version
第三步 创建目录
mkdir phpserver
第四步 启动php服务
php -S 0.0.0.0:9090 -t /phpserver
因为上面创建的目录在根目录所以使用的 /phpserver,下面代码需要保存为index.php,因为上面启动未指定文件名,详细参考下面注意事项
<!DOCTYPE html>
<html>
<body>
<?php
echo "我的第一段 PHP 脚本!";
?>
</body>
</html>
注意事项:
URI请求会被发送到PHP所在的的工作目录(Working Directory)进行处理,除非你使用了-t参数来自定义不同的目录。
如果请求未指定执行哪个PHP文件,则默认执行目录内的index.php 或者 index.html。如果这两个文件都不存在,服务器会返回404错误。
当你在命令行启动这个Web Server时,如果指定了一个PHP文件,则这个文件会作为一个“路由”脚本,意味着每次请求都会先执行这个脚本。如果这个脚本返回 false ,那么直接返回请求的文件(例如请求静态文件不作任何处理)。否则会把输出返回到浏览器。
效果图:
通过电脑在同一个局域网中访问刚刚发布php服务,前提必须互相可ping通状态。
go
1、 下载go
2、第二步,将文件通过Finder上传到home目录下,手机下载在sdcard中复制,电脑下载直接通过浏览拖拽到home目录里面
3、解压tar -xzvf go1.16.3.linux-arm64.tar.gz,解压后再文件名为go的目录中,注意,该命令要在home目录中执行
4、移动到mv go /usr/local目录下,注意,该命令要在home目录中执行
5、配置go环境
#GOROOT环境变量设置
export PATH=$PATH:/usr/local/go/bin
#GOPATH环境变量设置(go工作目录)
export GOPATH=/home/goCoding/
export GOPATH=/home/gocoding/
6、go version查看go版本
go version
7、运行test.go文件测试
go run test.go
8、配置goproxy
# 启用 Go Modules 功能
export GO111MODULE=on
# 配置 GOPROXY 环境变量
export GOPROXY=https://goproxy.cn
#牛云也出了个国内代理 goproxy.cn 方便国内用户更快的访问
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
9、根据平台和CPU类型选择,下载地址
#免费版执行这个:
cd /root/proxy/
wget https://mirrors.host900.com/https://github.com/snail007/goproxy/releases/download/v10.5/proxy-linux-arm64-v8.tar.gz
#商业版执行这个:
cd /root/proxy/
wget https://mirrors.host900.com/https://github.com/snail007/goproxy/releases/download/v10.5/proxy-linux-arm64-v8_commercial.tar.gz
下载自动安装脚本
cd /root/proxy/
wget https://mirrors.host900.com/https://raw.githubusercontent.com/snail007/goproxy/master/install.sh
下载后需要更F位置,更改为:F=”proxy-linux-arm64-v8.tar.gz”,也可以直接复制下面脚本
#!/bin/bash
F="proxy-linux-arm64-v8.tar.gz"
manual="https://snail.gitee.io/proxy/manual/"
set -e
WORKDIR="/tmp/proxy"
rm -rf $WORKDIR
mkdir $WORKDIR
cp $F $WORKDIR
cd /tmp/proxy
echo -e ">>> installing ... \n"
tar zxvf $F >/dev/null
set +e
killall -9 proxy >/dev/null 2>&1
set -e
cp -f proxy /usr/bin/
chmod +x /usr/bin/proxy
if [ ! -e /etc/proxy ]; then
mkdir /etc/proxy
cp blocked /etc/proxy
cp direct /etc/proxy
fi
if [ ! -e /etc/proxy/proxy.crt ]; then
cd /etc/proxy/
proxy keygen -C proxy >/dev/null 2>&1
fi
rm -rf /tmp/proxy
version=`proxy --version 2>&1`
echo -e ">>> install done, thanks for using snail007/goproxy $version\n"
echo -e ">>> install path /usr/bin/proxy\n"
echo -e ">>> configuration path /etc/proxy\n"
echo -e ">>> uninstall just exec : rm /usr/bin/proxy && rm -rf /etc/proxy\n"
echo -e ">>> How to using? Please visit : $manual\n"
执行脚本
chmod +x install.sh
./install.sh
10、查看proxy是否安装成功和proxy –version
proxy --version
11、vscode安装go插件,更多插件用法可以百度
12、运行test.go
JAVA
由于JAVA技术可以百度后Ctrl C 和 Ctrl V,自行百度即可。
这里安装OpenJDK,安装成功验证:
jdk-8
第1步,下载jdk1.8.0_291,可以在java官网,也可以在QQ群中下载。
第2步,在/opt 目录中解压
cd /opt
tar -zxvf jdk-8u291-linux-aarch64.tar
第3步:配置环境变量
打开配置文件,可以用vim,也可以用document。
vim /etc/profile
vim的使用自行解决,也可以在document里面复制、粘贴和保存。
在文件末尾添加:
vim /etc/profile
#set java env
export JAVA_HOME=/opt/jdk8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
第4步:修改保存退出后,使用命令使配置生效: source /etc/profile
source /etc/profile
第5步:测试是否配置成功,输入命令: java -version
java -version
正常显示代表配置成功
关于openjfx版本不匹配参考这个文章
注意:执行完source /etc/profile会让terminal无法高亮显示,重新执行下面命令即可
source ~/.bashrc
Web – node && npm && yarn
1、官网下载node,也可以通过命令安装。
安装完成验证:
2、安装cnmp(由于有些npm资源的原因,经常会导致npm安装依赖包的时候失败,所以我们还需要npm的国内镜像—-cnpm),WARN警告可以忽略,也可以升级cnmp对应的版本
npm install -g cnpm --registry=http://registry.npm.taobao.org
3、安装yarn
npm install -g yarn --registry=http://registry.npm.taobao.org
如果提示权限,尝试 sudo 管理员运行。
之后就可以愉快的安装其他库或框架了。
Vue.js/React.js/Angular.js and so on…
以Vue为例:
1、安装vue:
cnpm install vue
2、全局安装 vue-cli,注意一定要是全局,cnpm install –global vue-cli,下面报错可以忽略,解决方案可以查看github
cnpm install --global vue-cli
3、创建一个基于 webpack 模板的新项目,vue init webpack my-project(有经验和需求可以自行配置,如果没有一直按回车即可),过程中的警告可以暂时忽略,后面有需要再去github上面一一对应解决
vue init webpack my-project
4、进入到目录文件中
cd my-project
5、安装cnpm install
提示:必须要到my-project目录下去安装
cnpm install
文件路径:/home/my-project/config/index.js 必须修改的两个参数:
host:'0.0.0.0',//修改后可以在电脑上访问你的手机ip地址
port: 9080,//端口修改,不能和已有端口冲突
9、启动 my-project
npm run -dev
该命令要在my-project目录下输入
如果遇到下面情况是因为监听文件超过安卓的最大限定65536,kill -进程值 掉必要的进程
启动成功:
10、通过浏览器测试
手机ip地址:9080
code enjoy! 🐾🐾🐾🐾🐾🐾🐾🐾🐌🐝
作者:indeex
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。