当前位置: 首页 > 工具软件 > AWTK > 使用案例 >

AWTK相关问题整理-Linux

楚彦
2023-12-01

移植配置问题整理

1.如何配置交叉编译工具链?

  1. 进入awtk-linux-fb目录下
  2. 打开awtk_config.py
  3. 配置如下:
TSLIB_LIB_DIR='/home/vmuser/pengshuowang/zmp1107/awtk/tslib-1.15/__install/lib'	
TSLIB_INC_DIR='/home/vmuser/pengshuowang/zmp1107/awtk/tslib-1.15/__install/include'
TOOLS_PREFIX='/home/vmuser/pengshuowang/zmp1107/gcc/arm-zlgmcu-linux-uclibcgnueabi/bin/arm-zlgmcu-linux-uclibcgnueabi-'	#交叉编译工具相关路径

注意:在配置上述路径时,要把该文件中上述变量都要找到并赋值,否则如果下面还有该变量未修改赋值,则会覆盖上面的变量。

2.awtk在linux上移植的时候要不要编译awtk源码?

答:要,但是编译awtk源码不需要用户自己去awtk源码目录下编译。如果是首次编译,则只需要在awtk-linux-fb文件夹下执行scons就会自动对awtk的源码进行编译。
如果要在ubuntu上用命令的形式打包demo,需要用到编译后的AWTK源码,编译AWTK源码之前一定要看AWTK源码目录下的README.md,安装好相应的工具。在ubuntu上编译AWTK源码,在安装好相关工具的前提下,直接到AWTK源码目录下执行scons.

编译AWTK应用相关问题整理

1.Linux下打包以及编译步骤

1.打包Demo
进入Demo的scripts目录执行:python update_res.py all
在Windows上已经打包好的情况下这步可以忽略
2.编译Demo
scons APP=…/awtk-examples/AWTK-Demo
3.生成发布包
sh ./release.sh(生成默认的例子)
sh ./release.sh …/awtk-examples/AWTK-Demo/res demo(生成demo)

2.刚下载的awtk源码和awtk-linux-fb文件执行scons出现File xxx found where directory expected.问题

答:删除awtk-linux-fb目录下的build文件夹和bin文件,如果不行就更新scons版本,指令如下:

sudo apt-get install gcc g++ scons libsndio-dev libgtk-3-dev libglu1-mesa libglu1-mesa-dev libgl1-mesa-glx libgl1-mesa-dev libasound2-dev libibus-1.0-dev fcitx-libs-dev git vim clang-format libharfbuzz-dev nodejs libreadline-dev

3.如果刚移植的awtk-linux-fb编译报以下错误。

TypeError: File /home/vmuser/pengshuowang/zmp1107/awtk/awtk-linux-fb/bin found where directory expected.:
File “/home/vmuser/pengshuowang/zmp1107/awtk/awtk-linux-fb/SConstruct”, line 78:
SConscript(SConscriptFiles)
File “/usr/lib/scons/SCons/Script/SConscript.py”, line 614:
return method(*args, **kw)
File “/usr/lib/scons/SCons/Script/SConscript.py”, line 551:
return _SConscript(self.fs, *files, **subst_kw)
File “/usr/lib/scons/SCons/Script/SConscript.py”, line 256:
call_stack[-1].globals)
File “/home/vmuser/pengshuowang/zmp1107/awtk/awtk-linux-fb/build/var/awtk/src/SConscript”, line 100:
LIBS=TKC_DEPS_LIBS, LINKFLAGS=TKC_LINKFLAGS)
答:删掉awtk-linux-fb目录下的bin和var文件夹,如果没有var,只删掉bin

AWTK应用程序在嵌入式Linux板子上运行问题

1.如果把release.tar.gz包放到Linux板子上运行时缺少libts.so.0?

答:可以把虚拟机中tslib/lib下面的libts.so.0直接放到板子/lib目录下

2.如何关掉A7板子上默认的QTDemo?

答:关掉etc/init.d/S85qt.sh文件
注意:此操作仅限于致远电子Linux核心板

3.AWTK Designer生成的demo跟显示屏的分辨率不一致?

答:AWTK Designer默认生成的AWTK demo是自动适应屏幕分辨率的(默认屏幕分辨率大于demo的分辨率的情况下)。如果要修改demo的分辨率跟屏幕一致,后期要调整xml文件,如下,调整x、y、w、y这几个参数。前两个x/y是调整图像在屏幕的位置,按百分比调整。

window name="home_page" x="0%" y="10%" w="480" y="270" style:normal:bg_color="#FFFFFF"

进行完上述调整后要重新打包编译demo。

4.触摸屏校准程序如何执行?

答:wr /usr/local/tslib/bin/ts_calibrate
注意:此操作仅限于致远电子Linux核心板

5.在致远电子A9平台上执行AWTK可执行文件出现以下问题:

问题: root@M6708-T:/opt/release/bin# ./demo
-sh: ./demo: No such file or directory
答:执行: ln -s /lib/ld-2.23.so /lib/ld-linux.so.3
如果还是不行,执行:rm /lib/ld-linux.so.3
然后执行:ln -s /lib/ld-2.20.so /lib/ld-linux.so.3

6.如果可执行程序运行出现以下问题:

问题:Couldn’t open tslib config file : No such file or directory
答:/etc/profile 文件添加的内容如下:
export TSLIB_TSDEVICE=/dev/input/event1
export TSLIB_CALIBFILE=/etc/pointercal #这个可以酌情注释掉
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_PLUGINDIR=/usr/lib/ts #注意这个得是input.so所在目录
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0

7.awtk有些字体在windows上显示正常,在嵌入式板子上显示不正常,如何处理?

答:查看该界面的xml文件,如果该字体空间大小大于该字体的高度,则有可能在板子上无法正常显示,需要调整xml文件,让字体高度>=字体空间大小

AWTK应用程序开发相关的问题

1.LCD显示AWTK Demo如何做到横竖屏切换?

答:在AWTK例程window_main.c文件中application_init(void)函数下开头处添加如下代码:

/* Add by wangpengshuo start (横竖屏切换)*/
tk_init(800,1280,APP_SIMULATOR,NULL,NULL); /* 指定LCD的大小 */
#ifdef WITH_LCD_LANDSCAPE
// if(lcd_w<lcd_h)
tk_set_lcd_orientation(LCD_ORIENTATION_90);
#endif /* WITH_LCD_PORTRAIT */
/* Add by wangepngshuo end */
 类似资料: