|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
迅为-iMX6ULL开发板-Python移植-运行测试2
1 _% o2 q3 ]: v8 j W, V0 o92.3.1 库功能文件测试
/ Y0 |# Z; I7 m( [. E# t8 A进入_install/bin 目录下使用命令./python,然后使用 import 加载各模块如图 92.3.1.1 所示则 python移植成功。按 ctrl+D 退出。8 c9 ?4 v# N! ?9 g; {: D
/ e" Y. x4 Q& L$ q: P
92.3.2 数据库测试- ?% w8 F% z8 b3 y1 @1 f6 j4 l
在提供的压缩包里提供的有 sqlite3 数据库的例程 sqlite3test.txt,例程解释如下。8 r$ |/ Y) j0 }7 ~
import sqlite3 #导入 SQLite 驱动+ k# E7 N% |1 T; P# y# t9 R
conn = sqlite3.connect('test.db') #连接到 SQLite 数据库,数据库文件是 test.db,如果文件不存在,会自动在当前目录创建
, x/ M" F9 s( _6 K: D* }print "Opened database successfully"
5 K( R- q$ o2 E8 _cursor = conn.cursor() #创建一个 Cursor
0 d2 L) V! e2 J I% x- k- ^" N0 o @1 pcursor.execute('create table user (id varchar(20) primary key, name varchar(20))')
) y2 T# K3 }0 t9 ^% Q' `. @#执行一条 SQL 语句,创建 user 表
4 t- B: r v$ N0 L/ C5 Hcursor.execute('insert into user (id, name) values (\'1\', \'Michael\')')
# U. A- ?& ]0 X/ [) W' L: q! f#执行一条 SQL 语句,插入一条记录
+ F8 @; c( ~9 _. z7 k4 Q0 icursor.execute('insert into user (id, name) values (\'2\', \'jack\')')
, G) J* B7 A% v5 Jprint "Records created successfully"
# R8 N% p! ]/ E, E- _- Ycursor.rowcount #通过 rowcount 获得插入的行数: v" D$ a/ J5 P1 D) S/ L
cursor.close() #关闭 Currsor( [. ` T1 K8 G) Y8 B8 }5 ?" ~: k
conn.commit() #提交事务, G, z4 p9 j+ ~
conn.close() #关闭 Connection
! ^5 c. [+ Y: T5 d1 x; y* W) }执行命令”./python sqlite3test.txt” 可以看到生成了数据库文件 test.db 文件。) e3 t, t, B4 T1 n/ z9 o4 d
![]()
6 g5 Q( K1 D7 Y7 `% A92.3.3 time 和 和 datetime 测试 m% D; ^# C2 W) Y7 ]
我们可以先调整时间:“date -s "2020-07-21 16:02:00" && hwclock --systohc”
0 z2 [% s) r' x) E% N* M在提 供的压缩 包里提供 的有 time 测试 的例程 timetest.txt,将 测试例程 拷贝到开 发板的/data/_install/bin 下,执行命令“./python timetest.txt”可完成时间格式的转换和微秒级时间差的计算。
7 c$ z& _4 P1 ^' k% m
7 W- W- X7 t7 V: m% | 8 d$ i) a4 a3 y( h* } j3 r5 o
以上步骤无误后将环境变量添加到/etc/profile 文件:
N2 Y0 y6 }( l( T, t7 h) I* Aexport LD_LIBRARY_PATH=/data/_install/lib LD_LIBRARY_PATH
- H6 }9 v+ e# n: ~) @
# i, l/ R% X$ w& n/ Z( ?![]()
- h0 q+ ?- ?3 T Y( p0 q" p2 g' ?7 w92.3.4 sqlite3 库的移植
/ ?( v3 c1 i1 f6 D6 n; P3 F本章将制作 2.4 章节用到的 install_python 文件。和本文档同目录下有数据库的压缩包,也可以去 sqlite官网下载最新的数据库,通过 ssh 拷贝到 /home/ubuntu/python/ 目录下,使用命令“tar -vxfsqlite-autoconf-3240000.tar.gz ”解压,解压后生成文件夹“sqlite-autoconf-3240000” 如图 92.3.4.1 所示:# G# B) l/ D4 B5 y8 N$ t
& x E \/ H9 r' A2 e0 H![]()
) ]9 e3 P, S Z; t进入解压后生成的文件夹“sqlite-autoconf-3240000”,执行命令“./configure --host=ARM-none-linux-gnueabi --prefix=/home/ubuntu/python/sqlite-autoconf-3240000/install_python--enable-shared”,成功后生成 Makefile 等文件,如图 92.3.4.2。* T& _$ b, F* b& _$ T% n
0 }% t7 \, }) K3 l0 V
![]()
) D q9 @$ r T* ?" X! Y# ^* I执行 make 编译,成功后如图 92.3.4.3:
! T# C. m% t) z3 V ) `1 s0 o+ d" n7 {
执行命令“make install”,会看到在 sqlite-autoconf-3240000 目录下产生文件夹 install_python,执行命令“ls install_python”可以看到目录下有:bin include lib 三个文件夹。
' \; m8 @7 V1 P9 ?
; i2 g+ Q. `& ^! _6 H% t. Y![]()
* \2 X0 ~$ g Q2 D* S3 l至此 sqlite3 的库已经编译完成,用户需要其他的库文件也可以照此编译。% A0 I1 x# }2 J5 e) y$ ?9 {1 e
8 y9 x/ x% I# `( n
![]()
9 C! I$ _: y, p/ y) s* L7 h |
|