Qt medio ambiente y desarrollo cruz para construir la depuración de Tiny4412

prefacio

Recientemente Qt programación en el estudio Tiny4412. El primer paso, en primer lugar tiene que construir un buen entorno de desarrollo depuración cruz. Después de varios agónica, finalmente casi completa. notas por este medio durante ordenado, enviados al blog, a modo de resumen. También espero que a lo largo en el hoyo, a otros a evitar la reentrada.

También mencionar que (también después de la red aprendido de la investigación), popular yocto / OpenEmbedded marco de la industria, muchos fabricantes utilizan este marco para construir placa de desarrollo BSP distribuido (incluyendo el kernel, rootfs, cadena de herramientas, GDB, las bibliotecas y las librerías QT, etc. ), el usuario puede directamente basado en el BSP para construir Qt medio ambiente y desarrollo cruz, eliminando encontrado en la construcción de sus propios entornos, tales como dependencias faltantes, versión desajuste cadena de herramientas y otros temas, bajo costo y tiempo innecesario. casos relacionados mucho, "Referencias 2 a 5" en la columna algunos ejemplos (todos no probados, por referencia).

Sin embargo, Tiny4412 parece no haber proporcionado BSP yocto, en la actualidad no es experiencia de la ley, pero yocto estimación es la tendencia, el tiempo para aprender acerca.

En primer lugar, el entorno experimental

1,1 entorno de máquina virtual

a) Vmware impreso libros: VMware Workstation 12.5.7

b) Las versiones de Ubuntu: Ubuntu 16.04.4 LTS (I utilizar la red JZ2440 cien preguntas CD de datos _20180516 la versión, la dirección es: http://wiki.100ask.org/Download , y luego encontrar: 002_JZ2440 datos de CD _20180516 (libre))

c) la versión del kernel: 4.13.0

d) gcc Version: 5.4.0

e) cadena de herramientas Versión:

brazo-linux-gcc 4.3.2

Junta entorno 1.2 Desarrollo

1.2.1 Hardware

Placa de desarrollo: un amistoso tiny4412 brazo, baja: Tiny4412 / Super4412SDK 1611, tablero de base: Tiny4412 versión 1412

1.2.2 Software

a) la versión del núcleo (disco llevar tiny4412): linux-3,5 a 20.170.221

b) el sistema de archivos raíz (tiny4412 disco llevar): rootfs_qtopia_qt4-20160514

En segundo lugar, el proceso específico

2.1 compilar, instalar QTE-4.8.5

Nota: CD de tiny4412 se han recopilado meta-QTE-4.8.5-a-hostpc.tgz, pero debido a mi versión de Ubuntu y amigable como al compilar meta-QTE-4.8.5-a-hostpc.tgz versión de Ubuntu no es la misma, por lo que después de la descompresión, no se puede utilizar (después de hacer clic en el botón de construcción se informó directamente en qt-creador en :. la versión Qt no es válido no se pudo determinar la ruta a los binarios de la instalación de Qt, tal vez el qmake camino es malo?), solamente por la reconstrucción.

El brazo-QTE-4.8.5-20131207.tar.gz copia en el equipo de desarrollo, y luego ejecutar el siguiente comando terminal serie MobaXterm:

tar xzvf brazo-QTE-4.8.5-20131207.tar.gz

cd brazo-QTE-4.8.5

./build.sh

Nota: La primera vez a través ./build.sh, error: prueba de funcionalidad tslib falló. Pero después de volver a ejecutar ./build.sh, pero no se informa a la equivocación. La razón es desconocida, de origen desconocido.

2.2 descarga, compilar, instalar gdb-7.10, y luego compilar e instalar gdbserver

¿Por qué elegir esta versión? Debido aprendida previamente Wei Dongshan Linux embebido capacitación de tres cámaras para el seguimiento del proyecto, con el IAE-7.10 se ha establecido con éxito la depuración remota ambiente a través de tarjeta de desarrollo (de hecho, al seleccionar la versión 7.10 es también un pequeño asiento de sus pantalones Sonrisa).

2.2.1 descarga, compilar, instalar gdb-7,10 (Descargar: http://ftp.gnu.org/gnu/gdb/gdb-7.10.tar.gz )

El IAE-7.10.tar.gz descargado en el desarrollo de la máquina (suponiendo descargado a / home / libro / Descargas /), y luego ejecute el siguiente comando MobaXterm serie del terminal:

toma xzvf GDB 7.10.tar.gz

cd /home/book/Downloads/gdb-7.10

mkdir build cd build &&

../configure --target = brazo-Linux --prefix = / usr / local / brazo-gdb-7,10 --with-pitón

Nota: También se podría añadir: - con-expatriado --includedir = / home / libro / / expat-2.2.9 / bin / include --libdir = / home / libro / Descargas / expat-2.2.9 Descargas / bin / lib, véase más abajo Notas

hacer

make install

Export PATH = $ PATH: /usr/local/arm-gdb-7.10

(Esta frase se puede añadir al archivo / etc / medio ambiente o ~. / .Bashrc, para guardar los cambios en la variable de entorno $ PATH)

Nota 1: Cuando a GDB-7,10 conducta configure, para unirse a la opción --with-pitón (puede que tenga que descargar e instalar python2.7-dev ), o cuando se puede iniciar la depuración qt-creador, podría ser el error:

        imagen

Nota 2: Si la opción de configuración --with-pitón añadió, informó:

         la comprobación de python2.7 ... sin

         configure: error: Pitón se encuentra o está inutilizable

         La solución es: Para descargar e instalar python2.7-dev: apt-get install python2.7-dev, después de que la instalación se haya completado, se puede hacer dpkg -l | grep python2.7-dev para comprobar que la instalación se ha realizado correctamente        

Nota 3: Después de compilar instalar gdb-7.10, si el tiempo para iniciar la depuración qt-creador, en la salida de aplicaciones en el error: advertencia: la descripción de Can se dirige ni el XML de análisis; Soporte XML 
         fue en el tiempo de compilación de movilidad reducida, la primera descarga, compilación de expatriados de instalación ( http://sourceforge.net/projects/expat/ ):

         ./configure --prefix = $ PWD / bin

          bin mkdir

          make && make install

          A continuación, volver a compilar, instalar gdb-7,10 (cuando se configure, sino también añadir las siguientes opciones: - con --includedir-expatriado = / home / libro / Descargas / expat-2.2.9 / bin / la incluyen   
          --libdir = / Inicio /book/Downloads/expat-2.2.9/bin/lib -v)

Nota 4: Si un error se ejecuta al lado de la marca:

         la comprobación de libexpat ... (caché) sin

         configure: error: expatriados se encuentra o está inutilizable

         解决办法是:删除gdb-7.10整个文件夹,然后重新解压gdb-7.10.tar.gz,编译、安装。

         原因是:

         为了加快速度,configure会把上次的检查结果作为一个cache变量(名字是ac_cv_libexpat)缓存到gdb/configure.cache中,而本次configure时,会先从

         这个文件中查该cache变量,如果找不到,才会真正去检查libexpat这个库是否存在。所以,应该清除这个cache文件,强制configure去执行真正的检查。

2.2.2 编译、安装gdbserver

在mobaXterm串口终端执行以下命令:

cd /home/book/Downloads/gdb-7.10/gdb/gdbserver

mkdir build && cd build

../configure --target=arm-linux  -host=arm-linux

make CC=arm-linux-gcc

完成之后,会在build目录下生成gdbserver可执行文件。把它拷贝到开发板的/usr/bin里(可以用ftp或者nfs,过程略):

2.3 把根文件系统拷贝解压到开发机上

把Tiny4412随机光盘中的rootfs_qtopia_qt4-20160514.tgz拷到开发机上(假设拷贝到/home/book/Downloads/friendly_arm/tiny4412/linux_rootfs/),然后执行:

tar xzvf rootfs_qtopia_qt4-20160514.tgz

2.4 下载、安装Qt-5.9.0(下载地址:https://download.qt.io/archive/qt/5.9/5.9.0/qt-opensource-linux-x64-5.9.0.run

为什么选择这个版本?因为网上有很多成功案例,用这个版本搭建了交叉调试平台,有经验可借鉴。

把qt-opensource-linux-x64-5.9.0.run下载到开发机里,然后在mobaXterm串口终端执行以下命令:

chmod +x qt-opensource-linux-x64-5.9.0.run

./qt-opensource-linux-x64-5.9.0.run

然后按照安装向导的提示,一步步做即可(注:在“选择组件”这一步,把Qt5.9.0下面的所有组件都选上,保险起见)

2.5 打开qt-creator,进入Tools==>Options进行配置

2.5.1 添加device

imagen

imagen

imagen

imagen

imagen

imagen

imagen

imagen

imagen

2.5.2 添加Qt version

imagen

2.5.3 添加compiler

imagen

2.5.4 添加debugger

imagen

2.5.5 添加kit

imagen

2.5.6 添加环境变量,以支持触摸屏操作

方法1)修改开发板上的/etc/profile,(仿照/bin/setqt4env的内容)添加以下环境变量:

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

export QWS_DISPLAY=:1

export QWS_KEYBOARD=TTY:/dev/tty1

export QWS_MOUSE_PROTO="Tslib MouseMan:/dev/input/mice"

export TSLIB_CALIBFILE=/etc/pointercal

export TSLIB_CONFFILE=/etc/ts-mt.conf

export TSLIB_PLUGINDIR=/usr/lib/ts

export TSLIB_TSDEVICE=/dev/touchscreen-1wire

Método 2) el desarrollo de la máquina qt-creador, en, proyecto ==> Construir y Ejecutar ==> tiny4412 ==> Ejecutar ==> entorno de base para esta configuración de ejecución, la adición de las variables de entorno:

imagen

2.5.7 modificar la tarjeta de desarrollo / usr / local / etc / sshd_config, con el fin de resolver la depuración tiempos: problema: "El servidor no pudo iniciar el subsistema SFTP SFTP inicialización no se pudo"

Subsistema SFTP / usr / libexec / sftp-server

leer:

Subsistema SFTP / usr / local / libexec / sftp-server

2.6 qt-creador del programa para crear una nueva prueba de la prueba del widget y después hacer algunas configuraciones

2.6.1 Modificar "test.pro" archivo, agregue las dos líneas siguientes:

target.path = / opt ruta # instalación se especifica en la placa de desarrollo del programa

INSTALLS + = objetivo

imagen

2.6.2 Proyecto 进入 ==> Crecimiento y correr ==> Tiny4412 ==> Configuración de carrera

imagen

En este punto, el entorno de desarrollo Qt Tiny4412, la depuración de las estructuras finalmente completado, el efecto es el siguiente:

1) Iniciar depuración:

imagen

2) detener la depuración:

imagen

En tercer lugar, los materiales de referencia

1) "Tiny4412 Manual del usuario"

2) el desarrollo QtCreator + Brazo y depuración en línea

3) medio ambiente yocto Registro completo (L4.1.15_2.0.0) de desarrollo para construir la imx6

4) QtCreator + gdbserver depuración remota

5) realizado en el desarrollo y la migración QT5 NXP iMX8

Supongo que te gusta

Origin www.cnblogs.com/normalmanzhao2003/p/12445331.html
Recomendado
Clasificación