玩转Termux

重点参考资料termux wiki

简介

本篇文章主要介绍在安卓手机上使用termux软件环境搭建linux环境系统,主要是gcc和python,以及numpy/scipy,gsl等科学计算环境,可以让手机成为口袋里的高级计算器。

硬件:小米8,RAM 6G, ROM 64G,CPU 骁龙845 8核

软件:MIUI10系统稳定版(非root),安卓8.1.0版本

安装软件: APKpure(需墙),Termux, Haker's keyboard

安装完termux之后更新一下包以及安装一些必要的软件,如gcc(clang),vim,make,autoconf,python-dev(安装scipy用到),tree等

安装gcc


deb [trusted=yes] https://its-pointless.github.io/files/  termux extras

复制该内容,使用vim打开文件/etc/apt/sources.list添加之。这里需要注意的是termux下的文件路径和一般linux不同,termux下用户目录的绝对路径在:

/data/data/com.termux/files/home

而在termux下安装的软件,链接库,头文件等在路径:

/data/data/com.termux/files/usr

,如下结构图所示:

图片发自简书App
pkg install gnupg

添加源公钥的步骤我没有操作成功,下载不了,wget和curl试了提示非http链接,于是我忽略了这个步骤,后面还是可以正常安装gcc的

wget https://its-pointless.github.io/pointless.gpg

这是源公钥,如果没有安装gnupg,

apt-key add pointless.gpg

pkg update

# search packages

pkg search gcc

pkg install gcc-7

安装完成后输入

gcc-7 -v

验证gcc版本信息

图片发自简书App

更改gcc版本

一开始安装了clang,现在要更改默认的gcc编译器,可以按照下图设置


图片发自简书App

numpy/scipy安装

在termux中安装完python-pip(这里默认的python版本为3,如果需要python2的话可以使用pkg install python2安装)后,使用pip可以安装sympy,numpy但是安装scipy会出错,提示找不到lapack或者blas,查看官方手册知直接使用pkg安装numpy和scipy即可(注意顺序,先numpy,后scipy,这里本人有个疑问,可以使用pkg安装这两个库的原因好像是前面添加了源https://its-pointless.github.io/files/ termux extras才成功的,因为编译blas需要fortran编译器,因为按照这个顺序下来也没什么问题,就没有深究其中的依赖关系了)

pkg install numpy

pkg install scipy

这样操作同时会安装上openblas的。

安装GSL科学计算库

1.下载源代码:

wget http://mirrors.ocf.berkeley.edu/gnu/gsl/gsl-latest.tar.gz

2.解压:

tar -xzvf gsl-latest.tar.gz

3.进入解压后的文件夹

cd gsl-2.5

4.修改配置文件,这里主要参考termux包管理器教程

解压后的文件中可以找到configure', 'configure.ac', 'Makefile.in'等文件说明是基于GNU autotools工具链构建的,

在源代码根目录下执行

find . -name 'config.sub' -exec chmod u+w '{}' \; -exec cp -f "${PREFIX}/share/libtool/build-aux/config.sub" '{}' \;

find . -name 'config.guess' -exec chmod u+w '{}' \; -exec cp -f "${PREFIX}/share/libtool/build-aux/config.guess" '{}' \;

5.执行配置

./configure --prefix=/data/data/com.termux/files/usr

这里一定要更改prefix路径,因为默认的话会安装在/usr/local,这个路径在termux是没有的,或者说提示没有操作权限,作者一开始就是默认不管这个配置最后无法成功安装,这也是在手动编译包时与linux环境一大区别

6.编译及安装

执行

make -j10

make install

执行完安装后我看到一些警告,于是根据提示又执行了下面命令:

libtool --finish /data/data/com.termux/files/usr/lib

进入gsl doc文件夹

cd /data/data/com.termux/files/home/gsl-2.5/doc/examples
图片发自简书App

设置访问存储文件

使用命令

termux-setup-storage

按照下图设置

图片发自简书App

设置后会在用户目录下显示文件夹storage,里面可以访问内容有相册,下载文件等。

Installing ArchLinux with termux

  1. Download the script,copy and paste the following command lines into your Termux bash command shell:
pkg install wget
wget https://sdrausty.github.io/TermuxArch/setupTermuxArch.sh
  1. Run the script
bash setupTermuxArch.sh

It'll took some time to download archlinux and unpacking, please be patient!
安装完后在/data/data/com.termux/files/home会多出一个arch文件夹,刚才安装的所有arch系统的文件都在这里

3.成功安装后会自动进入archlinux环境,退出archlinux环境执行

exit

即可;当关闭termux进程然后重启,默认是termux,执行命令

startarch

便可进入archlinux环境


图片发自简书App

4.如果要删除刚安装的arch,查看安装脚本的帮助信息可知只要在脚本根目录下执行

bash setupTermuxArch.sh purge

其他帮助信息如下图所示:
图片发自简书App

5.创建登录用户,因为使用命令

startarch

默认是以root登录的,平时我们在linux系统下都是以某个用户身份登录操作的,因此需要创建个用户来登录,首先执行命令

startarch c addauser kindy

这里kindy便是创建的用户名,此命令会直接以用户kindy身份登录archlinux,退出之后要想再次以此用户登录,执行命令

startarch user kindy

或者

startarch login kindy

或者

startarch u kindy

或者

startarch l kindy

都可以。

后记

折腾完termux环境以后其实就一个目的,在手机上多学习一下linux系统,熟悉系统组成和各种命令,编辑跑程序啥的效率太低,有那时间还不如好好学习linux的理论知识,别把时间都浪费在码代码上了,学而不思则罔,思而不学则殆!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,117评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,963评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,897评论 0 240
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,805评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,208评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,535评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,797评论 2 311
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,493评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,215评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,477评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,988评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,325评论 2 252
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,971评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,055评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,807评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,544评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,455评论 2 266

推荐阅读更多精彩内容