Termux开发环境搭建

Termux 支持的开发环境很强,可以完美的运行 C、Python、Java、PHP、Ruby 等开发环境,建议选择自己需要的开发环境折腾。


1.编辑器

打仗要有一件趁手的兵器,写代码前总要调教一番编辑器。Termux支持的编辑器总类很丰富,完全可以满足你的各种需求(性癖)

1) Vim

Vim被称作编辑器之神,基本上所有Linux发行版都会自带Vim/Vi,如果你没有安装,那:

pkg install vim -y

解决Vim汉字乱码问题

老生常谈了,在home目录(~)下新建.vimrc 配置文件:

cd ~ &&vim .vimrc

添加以下内容:

set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1
set enc=utf8
set fencs=utf8,gbk,gb2312,gb18030

保存,使用source .vimrc命令使配置修改生效。

Vim缩进及tab配置

vim默认按下tab键会输入一个制表符8个空格位,默认语法缩进是8个空格,十分影响排版,如果空格一个个手动输入的话那及其影响效率。
依然是修改.vimrc配置文件,添加:

"将tab扩展成空格"
set expandtab

"ts是tabstop的缩写,设tab为4个空格,默认是8个空格"
set ts=4

"按退格键的时候退回缩进的长度,当使用expandtab时特别有用"
set softtabstop=4

"修改默认缩进为每一级缩进4个空格"
set shiftwidth=4

"开启自动缩进"
set autoindent

"开启文件类型检查,并且载入与该类型对应的缩进规则,比如当前是.cpp文件,就加载cpp文件对应的缩进规则"
filetype indent on

保存,使用source .vimrc命令使配置修改生效。

Vim其他常用配置

"打开语法高亮。自动识别代码,使用多种颜色显示。"
if has("syntax")
  syntax on
endif
 
"显示行号"
set number
 
"显示当前是处于命令模式还是插入模式"
set showmode
 
"显示当前输入的命令"
set showcmd

"光标遇到圆括号、方括号、大括号时,自动高亮对应的另一个圆括号、方括号和大括号。"
set showmatch
 
"搜索时高亮显示匹配结果"
set hlsearch
 
"输入搜索模式时,每输入一个字符,就自动跳到第一个匹配的结果。"
set incsearch
 
"vim需要记住1000次历史操作"
set history=1000
 
"打开文件监视。如果在编辑过程中文件发生外部改变(比如被别的编辑器编辑了),就会发出提示。"
set autoread
 
"光标所在行高亮"
set cursorline

"如果行尾有多余的空格(包括 Tab 键),该配置将让这些空格显示成可见的小方块。"
set listchars=tab:»■,trail:■
set list
 
"命令模式下,底部操作指令按下 Tab 键自动补全。第一次按下 Tab,会显示所有匹配的操作指令的清单;第二次按下 Tab,会依次选择各个指令。"
set wildmenu
set wildmode=longest:list,full

Vim设置成默认编辑器

Linux中许多程序时指定了默认编辑器的,如果想要时系统所有程序默认编辑器都变成vim,可以使用以下命令:

export EDITOR=vim

但是这样子操作完以后,重启的时候还是会变回原来的默认值,那就将命令写入开机自启脚本:

echo 'export EDITOR=vim' >>$PREFIX/etc/termux-login.sh

Termux还针对Python优化,封装了vim-python,有需要的可以尝试安装:

pkg install vim-python -y

2) Emacs

Vim有编辑器之神之称,Emacs则被誉为神之编辑器,功能拓展性和Vim难分伯仲,不过我暂时还不会用(手动狗头),Termux官方库里也封装了Emacs,那我就写个安装命令吧:

pkg install emacs -y

3) nano

正如其名,nano 是一款小而美的编辑器,相比起VimEmacs优点就很明显了:简单易上手。安装:

pkg install nano -y

安装后不需要配置即可使用,简单方便,就不再赘述了。

2.PHP

PHP 是一种开源的脚本语言,适用于网络开发。语法借鉴吸收 C 语言、Java 和 Perl 等流行计算机语言的特点,易于学习。

1) 安装PHP

pkg install php -y

安装后检查版本信息:

php --version

在这里插入图片描述

2) 运行测试

home 目录(~)下建一个 www 文件夹,然后在 www 文件夹下新建一个 index.php 文件,内容为:<?php phpinfo();?>

mkdir ~/www
echo '<?php phpinfo();?>' > ~/www/index.php

PHP5.4PHP内置了一个WebService,这里我们使用它来启动php服务进行测试:

cd ~ &&php -S 0.0.0.0:18651 -t www/

其中18651是自定义的未占用监听端口,不要使用0~1023,没有获取root权限的Termux无权访问。

本机浏览器访问http://127.0.0.1:18651,看到如下界面就表示成功了:
在这里插入图片描述

3.Nginx

Nginx是一个简单高效的Web和反代理服务器,后面我们会经常用到。

1)安装及基本指令

安装:

pkg install nginx -y

测试:

nginx -t

在这里插入图片描述
启动:

nginx

Termux 在 Nginx 上默认运行的端口号是 8080, 使用 pgrep或者ps 命令可以查看 Nginx 进程相关的 PID 号等相关信息。
然后本机直接访问http://127.0.0.1:8080 查看 Nginx 是否正常启动:
在这里插入图片描述

早期版本Nginx是需要在termux-chroot环境下运行的,如果你的Nginx无法正常运行,先查查自己Termux的版本先,虽然我觉得没多少人再用远古版本了(古老手机古老安卓只能装古老版本的,你当我没说话哦)

重启:

当修改完Nginx相关配置后,我们需要使其重启生效:

nginx -s reload

停止:

Nginx内置两条停止命令:

nginx -s quit		#Nginx 在退出前会完成已经接受的连接请求
nginx -s stop		#快速关闭,不管有没有正在处理的请求

2)Nginx 解析 PHP

本小节涉及步骤较多,请务必按照流程一步一步来。配置本小节的内容得确保 Termux 已经配置好了 PHP 开发环境,没有配置好的可以参加上面PHP 小节部分

安装php-fpm

Nginx 本身不能处理 PHP,它只是个 Web 服务器,当接收到 PHP 请求后发给 PHP 解释器处理。Nginx 一般是把请求转发给 fastcgi 管理进程处理,PHP-FPM 是一个 PHP FastCGI 管理器。

安装命令:

pkg install php-fpm

配置php-fpm

编辑php-fpm配置文件www.conf

vim $PREFIX/etc/php-fpm.d/www.conf

搜索listen =找到:

listen = /data/data/com.termux/files/usr/var/run/php-fpm.sock`

修改为:

listen = 127.0.0.1:9000

配置Nginx
编辑 Nginx 的配置文件nginx.conf

vim $PREFIX/etc/nginx/nginx.conf

①添加 index.php 到默认首页的规则:
在这里插入图片描述

②取消此处 location ~ \.php$ 注释,按照图片提示做如下修改:
在这里插入图片描述
其中/data/data/com.termux/files/usr/share/nginx/html为Termux 里面的 Nginx 默认网站的根目,如果你修改过,此处替换到对应路径即可。
完整配置文件示例:

worker_processes  1;
events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       8080;
        server_name  localhost;
        location / {
            root   /data/data/com.termux/files/usr/share/nginx/html;
            index  index.html index.htm index.php;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /data/data/com.termux/files/usr/share/nginx/html;
        }

        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /data/data/com.termux/files/usr/share/nginx/html$fastcgi_script_name;
            include        fastcgi_params;
        }
    }
}

测试 PHP 解析

在刚刚修改的 Nginx 默认网站的根目录下新建info.php,内容为:<?php phpinfo(); ?>,直接用echo语来添加:

echo '<?php phpinfo(); ?>' > $PREFIX/share/nginx/html/info.php

然后启动php-fpm服务:

php-fpm

因为修改过Nginx配置文件,重启Nginx服务使配置生效:

nginx -s reload

如果解析成功,本机浏览器直接访问 http://127.0.0.1:8080/info.php 应该就能看到以下界面了:在这里插入图片描述

3) Nginx ipv6访问

Termux的Nginx默认就是支持ipv6的,这里我们只要添加一个ipv6监听服务即可。

vim $PREFIX/etc/nginx/nginx.conf

找到刚刚添加 index.php 到默认首页的规则时操作的server,在listen 8080;后添加一个ipv6端口: listen [::]:8081 ipv6only=on;
在这里插入图片描述
保存配置文件,重启Nginx服务使配置生效:

nginx -s reload

这样ipv6就设置成功了,访问一下试试:
在这里插入图片描述
成功!

如果想实现ipv6域名访问的话,请移步这篇文章:《Termux解析公网ipv6——从全世界各地连接你的Termux》

4.C 环境

Termux 官方封装了 Clang(大名鼎鼎的"色狼" ㄟ (▔,▔) ㄏ)

Clang是一个 C、C++、Objective-C 和 Objective-C++ 编程语言的编译器前端。

安装 clong

pkg install clang

编译测试

编程语言的入门一课就是编写一个Hello Word,这里我们就拿他来测试。
HolloWorld.c:

#include <stdio.h>

int main(){
	printf("Hello Termux!\n");
	return 0;
}

写完保存,使用 clang 来编译生成HelloWorld的可执行文件:

clang HelloWorld.c -o HelloWorld

执行结果:在这里插入图片描述

5.Java

Termux官方运行Java,只能使用EJCdx编译后,再用Android 自带的dalvikvm运行。

虽然但是吧,,,如果想要完整体验折腾 JAVA 环境的话,建议是利用proot在Termux内安装完整Linux系统。咱们这为了继续压榨Termux,还是继续在原生Termux里折腾。

安装基础组件

pkg install ecj dx  termux-tools -y

编译测试

还是演示一个Hello Wolrd程序来测试。
HelloWorld.java

public class HelloWorld {
    public static void main(String[] args){
        System.out.println("Hello Termux!");
    }
}

编译生成 class 文件:

ecj HelloWorld.java

编译生成 dex 文件:

dx --dex --output=HelloWorld.dex HelloWorld.class

使用 dalvikvm 运行:

dalvikvm -cp HelloWorld.dex HelloWorld

在这里插入图片描述


才知道官方在0.117版本就已经支持openjdk了,那这样运行JAVA环境就方便多了。

安装Openjdk

先查询官方提供的JDK版本:

pkg search jdk

在这里插入图片描述
看到官方提供的是openjdk-17,安装JDK:

pkg install openjdk-17

验证安装是否成功:

java -version

在这里插入图片描述
出现版本号就说明安装成功了,接下来就像正常Java环境一样操作啦。HelloWord玩儿乏了,这里换个乘法调调口味吧。
MultiplicationTable.java

public class MultiplicationTable {
    public static void main(String[] args) {
        System.out.println("嗨嗨嗨,我是九九乘法表:");
        for (int i = 1; i <= 9; i++) {          //总共9行
            for (int j = 1; j <= i ; j++) {     //第 i 行有 j 列
                System.out.print(i + "*" + j + "=" + (i*j) + "\t"); // \t 制表符,Termux制表符占八个字符宽度
            }
            System.out.println();               //每一行输出结束后换行
        }
    }
}

编译:

javac MultiplicationTable.java

运行:

java MultiplicationTable

在这里插入图片描述

6.Python

Python(屁眼神通)是近几年非常流行的语言,Python 相关的书籍和资料如雨后春笋一般不断涌现,带来了活跃的Python学习氛围。

安装 Python3

Termux安装Python默认版本是Python3版本:

pkg install python -y

安装完后查看python版本信息然后依旧运行一个HelloWord
在这里插入图片描述

升级 PIP 版本

python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

切换pip软件源

这里换成了清华源的:

python -m pip install --upgrade pip &&pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

查看pip版本

pip -V

显示最新,换源升级完成。

 
 
至此Termux上常用的开发环境就搭建好了,接下来我们就是要:搞!事!情!


你长得这么好看,给个关注不过分吧?
快速导航
        👈Termux定制——进阶配置一些看起来很酷的事👉        
  • 11
    点赞
  • 86
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值