Skip to content

AWTK 环境搭建

AWTK 环境检测工具简介

答:AWTK 环境检测工具是用来检测当前系统是否能够正常编译运行 AWTK 程序的工具,若无法通过检测,则需要按照要求搭建环境。在 AWStudio 中的"帮助"一栏,点击"检测AWTK开发环境",即可打开AWTK 环境检测工具。

使用环境检测工具时,python出现警告可能是什么原因?

答:AWTK 要求 python 的版本必须高于 2.7,否则无法正常使用编译功能。如果 python 版本符合要求,请检查 python 的位数是否与系统位数相同。

使用环境检测工具时,SCons出现警告可能是什么原因?

答:SCons 的版本对 python 的版本有一定的要求, AWTK 对 python 和 SCons 最低的版本要求分别是 2.7 与3.0.0,若用户使用的 SCons 版本为 4.3.0,则需要 python 的版本为 3.8 以上。

使用环境检测工具时,Visual Studio C++出现警告可能是什么原因?

答:AWTK 对 Visual Studio C++ 的版本有一定的要求,需要 2015 及以上版本,如果用户当前使用的 Visual Studio C++ 版本为 2022 以上,则需要 SCons 的版本为 4.3.0 以上。

Windows下执行scons命令提示:Windows找不到文件powershell.exe?

答:这是由于powershell.exe不在环境变量中,导致执行命令时找不到该文件。可以尝试以下两种解决方案(任选一种即可):

  1. 把C:/Windows/System32/WindowsPowerShell/v1.0/powershell.exe拷贝到C:/Windows目录下;
  2. 把以下的路径加入系统环境变量Path中。
bash
C:\Windows;
C:\Windows\system32;
C:\Windows\System32\Wbem;
C:\Windows\System32\WindowsPowerShell\v1.0;

终端提示:scons 不是内部或者外部命令,也不是可运行的程序或批处理文件

答:编译时终端输出这个错误通常是由于没有安装Scons,请参考《AWTK开发实践》中的"1.4 环境搭建"章节或使用环境检测工具,在对应平台上安装Scons。

终端提示:cl 不是内部或者外部命令,也不是可运行的程序或批处理文件

答:编译时终端输出这个错误通常是由于没有安装Visual Studio或者是安装时没有勾选Visual C++组件,请参考《AWTK开发实践》中的"1.4 环境搭建"章节或使用环境检测工具,在对应平台上安装Visual Studio。

终端提示:[SConstruct] ValueError: unsupported pickle protocol:4 或 5

答:这是由于项目之前使用其他版本的Scons编译过,在项目目录下生成了.sconsign.dblite文件,而当前编译项目使用Scons版本与之前的不一致,导致出现无法兼容的错误,删除项目目录下的.sconsign.dblite文件后,重新编译即可。

注意:如果在AWTK Designer中安装了自定义控件(控件会被安装在项目的 3rd 目录下),那么3rd/awtk-widget-xxx目录下的.sconsign.dblite文件也需要删除。

终端提示:Cannot find module 'glob'

答:这是由于没有安装Node.js中的glob模块,或者是没有将glob模块的安装路径添加至环境变量,变量名称必须为NODE_PATH。一般来说,在终端中执行以下命令,安装glob模块即可:

bash
npm install -g glob

终端提示:ImportError: No module named PIL

答:这是由于没有安装Python中的PIL模块,在终端中执行以下命令安装即可:

bash
pip install Pillow

Ubuntu14编译AWTK报错,且无法安装相关的依赖包?

答:AWTK不支持Ubuntu 16以下的版本,请升级Ubuntu系统(>=16),然后再按照awtk/README.md文档安装相关依赖包,并重新编译AWTK。

在树莓派上编译报错,缺少glibconfig.h头文件,或运行闪退

答:在树莓派上进入AWTK文件夹直接scons编译(SDL桌面模式),可能报告找不到glibconfig.h或者运行闪退,请按如下方法解决:

c
sudo ln -s /usr/lib/arm-linux-gnueabihf/glib-2.0/include/glibconfig.h /usr/include/glib-2.0/

修改awtk/awtk_config.py中的渲染模式使用GLES2AGGE,选择其中一个:

NANOVG_BACKEND='GLES2'
NANOVG_BACKEND='AGGE'

使用Keil编译AWTK,不开启MicroLIB时无法仿真或跑飞?

答:某些平台可能存在该问题,原因不明,暂时解法:程序中不要调用printf可解决。

awtk-linux-fb 编译时报错:xxx found where directory expected.

答:出现该报错时,可以按以下步骤解决:

  1. 删除 awtk-linux-fb 中的 bin 目录和 build 目录,重新编译。
  2. 如果仍然报相同的错误,就是使用的 SCons 版本过低,AWTK 要求 SCons(版本>=3.0.0),请升级 SCons。

awtk-linux-fb 编译时报错:undefinded reference to 'libiconv'.

答:该错误表示链接时找不到'libiconv'库文件,该库通常由交叉编译工具链提供,请先确认交叉编译工具链中是否存在这个库文件,如果存在,则可以在编译脚本awtk-linux-fb/awtk_config.py 中添加链接库,代码如下:

python
OS_LIBS = ['iconv', 'stdc++', 'pthread', 'rt', 'm', 'dl']

使用环境检测工具安装 SCons 失败,该如何解决?

答:如果检测工具安装 SCons 失败,请检查环境变量中是否存在 Python 的路径,有两个路径需要添加到环境变量中(以下基于 Python 安装目录,XX 表示 Python 版本号):

sh
Python\PythonXX
Python\PythonXX\Scripts