termux python3-dev_termux进阶

二、进阶

termux 的环境虽说和 Linux 有些类似,但在文件的路径方面还是有所不同。termux 有两个主要路径的环境变量一个为

$HOME,就是你刚进入终端时的位置。另一个就是 $PREFIX,是 usr 目录,下面有用于存放配置的

/etc,存放可执行文件的

/bin 等。如果要访问

sdcard 的目录,需要先运行 termux-setup-storage。完成授权后,在 $HOME 目录会多出一个 storage

目录。

通过pwd查看当前工作的路径,通过ls

-l查看当前路径下边的内容和权限,进而可以逐步cd进入。

编译安装opencv详见

Refer tohttps://wiki.termux.com/wiki/Instructions_for_installing_python_packages#opencv

1. Install python3 and dev

pkg install python

python-dev

2. Install tools andlibs

pkg install libjpeg-turbo-dev libpng-dev

cmake pkg-config

There might be other required dependecies as well, see the opencv

docs for the list in the opencv documentation.

3. Clone opencv from git

git clone https://github.com/opencv/opencv && cd

opencv

4. Create build directory

mkdir build && cd

build

5. Configure

LDFLAGS=" -llog -lpython3" cmake -DCMAKE_BUILD_TYPE=RELEASE

-DCMAKE_INSTALL_PREFIX=$PREFIX -DBUILD_opencv_python3=on

-DBUILD_opencv_python2=off -DWITH_QT=OFF -DWITH_GTK=OFF

..

Don't missing the double dot at the end of command, It means start

from the parent folder. After success, execute the following

command:

make

make install

Please be noted that make will take a long time.

6. After installed, test it in python

python

>>> import cv2

>>>cv2.__version__

If no error it will print the version

Note: don'tt install python2, cmake will confuse with it and when

import cv will face error.

/data/data/com.termux/files/home/storage/external-1/opencv-3.4.4/build

LDFLAGS=" -llog" cmake -DCMAKE_BUILD_TYPE=RELEASE

-DCMAKE_INSTALL_PREFIX=$PREFIX -DBUILD_opencv_python3=off

-DBUILD_opencv_python2=on -DWITH_QT=OFF -DWITH_GTK=OFF

..

LDFLAGS=" -llog" cmake -DCMAKE_BUILD_TYPE=RELEASE

-DCMAKE_INSTALL_PREFIX=$PREFIX

-DBUILD_opencv_python3=on-DBUILD_opencv_python2=off-DWITH_QT=OFF

-DWITH_GTK=OFF ..

安装过程时间可能会有点长10~30分钟左右,编译完成之后OpenCV就安装到了指定的/usr/local下面的一些目录中,库文件就安装到了/usr/local/lib下,Python的模块安装位置是:/usr/local/lib/python2.7/site-packages,执行 ls

/usr/local/lib/python2.7/site-packages/ 可以看到两个文件,一个是cv2.so一个是cv.py

这两个文件在刚才opencv-2.4.13编译的目录下面lib/下也存在着两个python模块文件,但是不幸的是现在并不能直接使用,原因是我们操作系统python依赖包的位置是/usr/lib/python2.7下,所以刚才如果编译到/usr下是直接可以用的,不过这个也不重要,只要我们将这两个文件复制到正确的目录下,那么就能正常使用OpenCV的功能了,执行:

cp /usr/local/lib/python2.7/site-packages/cv*

/usr/lib/python2.7/site-packages/ 复制过去之后进入python交互式界面执行 import cv2

没有报错则安装成功

可以写一个测试的小案例,在服务器上有一张图片是test.jpg现在简单的使用cv2模块解析成图像矩阵,然后再写入磁盘文件中,代码如下:

#!/usr/bin/python

# -*- coding:utf-8 -*-

import cv2

image = cv2.imread("test.jpg")

print image

cv2.imwrite("test1.jpg",image)#这里将原有的test.jpg生成test1.jpg,

执行 python cvtest.py 执行完后会发现输出好多矩阵变量,并且生成了test1.jpg文件,生成的文件有可能比原文件大也有可能小,具体根据图像来决定,现在查看一下图片内容,和之前是一样的.

安装paddle_mobile如下:

mkdir build && cd build

LDFLAGS=" -llog" cmake -DCMAKE_BUILD_TYPE=RELEASE

-DCMAKE_INSTALL_PREFIX=$PREFIX -DBUILD_paddle_python3=off

-DBUILD_paddle_python2=on

-DWITH_QT=OFF -DWITH_GTK=OFF ..

CMake Warning:

Manually-specified variables

were not used by the project:

BUILD_paddle_python2

BUILD_paddle_python3

WITH_GTK

WITH_QT

make

make install

安装paddle_mobile如下:

git clonehttps://github.com/PaddlePaddle/Paddle.git&&

cd Paddle

mkdir build && cd build

LDFLAGS=" -llog" cmake -DCMAKE_BUILD_TYPE=RELEASE

-DCMAKE_INSTALL_PREFIX=$PREFIX -DBUILD_Paddle_python3=off

-DBUILD_Paddle_python2=on -DWITH_QT=OFF -DWITH_GTK=OFF

..

CMake Warning:

Manually-specified variables

were not used by the project:

BUILD_paddle_python2

BUILD_paddle_python3

WITH_GTK

WITH_QT

make

make install

<think>好的,我现在需要帮助用户解决在Termux上运行Python的问题。首先,我要回顾用户提供的引用资料,特别是引用[2]和[4],因为它们提到了Termux的具体配置。用户的需求可能包括安装Python、设置环境以及运行脚本。 首先,Termux是一个Android终端模拟器,可以在手机上运行Linux环境。根据引用[2],安装软件包应该使用pkg命令。所以第一步应该是更新仓库,然后安装Python。用户可能需要知道基本的安装步骤,比如pkg install python。 接下来,用户可能想要运行Python脚本。需要说明如何启动Python交互式环境或者执行脚本文件。比如使用python script.py命令。这里需要确保用户知道如何在Termux中导航到脚本所在的目录,可能需要解释基本的cd和ls命令。 然后,考虑到用户可能想进行更复杂的开发,引用[4]提到配置Jupyter Notebook,这需要安装额外的包,比如pip安装jupyter。但用户的问题中没有明确提到这个,可能暂时不需要深入,但可以作为优化部分提到。 另外,用户可能遇到环境变量或依赖问题。比如安装第三方库时,某些需要编译的库可能需要安装gcc和python-dev。引用[2]提到安装失败时查看官方文档或社区,所以需要建议用户遇到问题时查阅这些资源。 还有,Termux的存储权限问题。默认情况下,Termux可能无法访问手机存储,需要运行termux-setup-storage来获取权限,这样用户可以在手机存储中读写文件,这对运行Python脚本处理数据很重要。 用户提到的引用[3]提到实时拉取数据到手机,可能需要使用requests库或其他网络库。这里需要确保用户知道如何用pip安装这些库,比如pip install requests。同时,可能需要指导用户如何保持脚本后台运行,比如使用nohup或Termux的RUN_COMMAND_BACKGROUND参数,如引用[2]中的com.termux.RUN_COMMAND_BACKGROUND。 最后,整理步骤时要清晰,分点说明安装、运行、管理依赖、存储权限、后台运行等。同时,生成相关问题可以涵盖性能优化、环境配置、应用场景等,帮助用户深入探索。</think>### 如何在Termux上运行Python的分步指南 #### 1. **安装Python环境** - 更新软件包仓库并安装Python: ```bash pkg update && pkg upgrade pkg install python ``` - 验证安装: ```bash python --version ``` 输出应为类似`Python 3.11.x`[^2]。 #### 2. **运行Python程序** - **交互模式**:直接输入`python`启动REPL环境 - **执行脚本**: ```bash python your_script.py ``` 确保脚本路径正确(使用`cd`切换目录)[^3]。 #### 3. **管理Python依赖** - 安装pip包管理工具(通常随Python自动安装): ```bash pkg install python-pip ``` - 安装第三方库(如`requests`): ```bash pip install requests ``` - 对于需要编译的库(如`numpy`),需安装开发工具: ```bash pkg install clang python-dev ``` #### 4. **设置存储权限** - 允许访问手机存储: ```bash termux-setup-storage ``` - 文件默认存储在`~/storage/shared/`目录[^4]。 #### 5. **后台运行脚本** - 使用`nohup`保持进程: ```bash nohup python long_running_script.py & ``` - 通过Termux API调用(需安装`termux-api`): ```bash pkg install termux-api am startservice \ --user 0 \ -n com.termux/com.termux.app.RunCommandService \ -a com.termux.RUN_COMMAND \ --es com.termux.RUN_COMMAND_PATH &#39;python /path/to/script.py&#39; \ --ez com.termux.RUN_COMMAND_BACKGROUND true ``` 此命令可实现完全后台执行[^2]。 ```python # 示例:手机端数据拉取脚本 import requests import time while True: response = requests.get("https://api.example.com/data") print(f"Data received: {response.text[:50]}...") time.sleep(300) # 每5分钟更新 ``` #### 6. **进阶配置** - **Jupyter Notebook**: ```bash pip install jupyter jupyter notebook --ip=127.0.0.1 --port=8888 ``` 通过浏览器访问`localhost:8888`[^4] - **虚拟环境**: ```bash python -m venv myenv source myenv/bin/activate ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值