|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
迅为-iMX6ULL开发板-Python移植-运行测试29 d5 r5 a% ^9 X: X& }* [' \0 H
92.3.1 库功能文件测试
$ v7 T. P. o: m) @1 v" z, X3 K进入_install/bin 目录下使用命令./python,然后使用 import 加载各模块如图 92.3.1.1 所示则 python移植成功。按 ctrl+D 退出。% H3 v+ i) n* ^9 e
![]()
3 ~( x: q' u8 m |- C92.3.2 数据库测试) b; A" e4 D9 `
在提供的压缩包里提供的有 sqlite3 数据库的例程 sqlite3test.txt,例程解释如下。: \1 g) t* H5 G$ h
import sqlite3 #导入 SQLite 驱动) d& |7 d8 L H( c0 b) R. E, @; L
conn = sqlite3.connect('test.db') #连接到 SQLite 数据库,数据库文件是 test.db,如果文件不存在,会自动在当前目录创建6 n% O( w' S1 ]4 q# k: T3 @
print "Opened database successfully"5 {2 b" \5 _3 H( `. M1 J, a
cursor = conn.cursor() #创建一个 Cursor# X e7 T; r, _: }5 [% `: N
cursor.execute('create table user (id varchar(20) primary key, name varchar(20))')
0 |3 F6 n" I$ W& v#执行一条 SQL 语句,创建 user 表
+ O7 E0 y4 I& O- F9 I- kcursor.execute('insert into user (id, name) values (\'1\', \'Michael\')')+ M: Z0 a2 g- A7 i# W
#执行一条 SQL 语句,插入一条记录* w1 F' ?% V J+ ]1 n0 M
cursor.execute('insert into user (id, name) values (\'2\', \'jack\')')
# J* E; F2 ~, l# y/ \print "Records created successfully"
0 q8 D, X1 M! P" y+ a C! R. w9 `' R9 @cursor.rowcount #通过 rowcount 获得插入的行数
: _. O/ ~7 T8 E0 m5 Z3 x- scursor.close() #关闭 Currsor
+ n( p4 W9 X" uconn.commit() #提交事务
. l3 p2 m/ @6 T: B- @( H' U: _2 V) Zconn.close() #关闭 Connection8 U$ C/ D0 _9 _# V9 @; v# R, i
执行命令”./python sqlite3test.txt” 可以看到生成了数据库文件 test.db 文件。1 Z/ y3 y+ _% N- W/ j& A) W1 f
![]()
: T, g7 e. ]! s, Y% Q92.3.3 time 和 和 datetime 测试7 Y& b( r( x, N0 H
我们可以先调整时间:“date -s "2020-07-21 16:02:00" && hwclock --systohc”
) O6 ~) g+ _: k7 g9 k在提 供的压缩 包里提供 的有 time 测试 的例程 timetest.txt,将 测试例程 拷贝到开 发板的/data/_install/bin 下,执行命令“./python timetest.txt”可完成时间格式的转换和微秒级时间差的计算。
4 `7 g7 a$ o8 w
* h' G* p0 t( y' F" g 0 v; u) e, V- @2 v4 l/ {
以上步骤无误后将环境变量添加到/etc/profile 文件:
1 ]9 {: t2 }2 i5 F$ ^export LD_LIBRARY_PATH=/data/_install/lib LD_LIBRARY_PATH/ x% O. {8 R% A- a! q
3 w) \) S6 r; U$ d7 X; d. O![]()
. \- V, A% C p2 U92.3.4 sqlite3 库的移植
$ m. t1 z* f2 E) O/ h本章将制作 2.4 章节用到的 install_python 文件。和本文档同目录下有数据库的压缩包,也可以去 sqlite官网下载最新的数据库,通过 ssh 拷贝到 /home/ubuntu/python/ 目录下,使用命令“tar -vxfsqlite-autoconf-3240000.tar.gz ”解压,解压后生成文件夹“sqlite-autoconf-3240000” 如图 92.3.4.1 所示:9 g* w# w7 ]8 o5 i; ~
9 }4 o1 _0 m8 U1 Q2 [# |' Y
. I, N: f X. R+ P$ S0 u) }
进入解压后生成的文件夹“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。
; X0 y& `. S. |3 F3 z: [1 |
- {& `9 I' z4 g ' r1 t B1 R! O) f; p3 ]# {
执行 make 编译,成功后如图 92.3.4.3:2 g7 u7 X- g- `9 T0 N
![]()
4 ]6 M* _( U: n+ \9 z执行命令“make install”,会看到在 sqlite-autoconf-3240000 目录下产生文件夹 install_python,执行命令“ls install_python”可以看到目录下有:bin include lib 三个文件夹。
# W$ W- T9 A. j: k& _
$ E; L: I" v) H) T$ z. s* e( |![]()
3 M- y5 M5 j( C0 [+ r至此 sqlite3 的库已经编译完成,用户需要其他的库文件也可以照此编译。3 r s) A" ^/ G+ B4 P {
![]()
" A# h1 C3 y& J![]()
+ e3 r* t- d2 B) s; d1 S7 J5 R! O4 ` |
|