**********************
Publicado por elias172
Fuente: MotoEvolution.net
**********************
Holas, ps les traigo este manual para que se den la idea de como programar en QT para nuestros motomagx, los que no tengan nada de conocimientos c++ no importa, ya que solo vamos a copiar y pegar el source, yo tampoco se mucho de C++ solo cosas basicas, vamos que todos pueden hacerlo y despues estudiando un poco de c++ crear nuestras propias apps, yo personalmente prefiero usar este tipo de programacion al bash ya que aca si se podria decir la imaginacion es ilimitada, sin mas que decir vamos al tuto:
1.- Lo primero que necesitamos es una distribucion de linux recomiendo altamente Ubuntu, ahora para personas que necesitan su windows si o si, lo recomendable seria usar un virtual box, usen este tuto les va venir muy bien Instalar Ubuntu dentro de Windows con VirtualBox « Slice of Linux
2.- Ahora necesitamos un entorno, un toolchain, y un SDK con las libs bien actualizadas.
Lo que les voy a dejar solo va servir para el motorola e8/em30 si quieren para otro modelo me avisan:
Aca les dejo el toolchain que yo uso para mi em30: http://ezxdev.org/e8-gcc.tar.lzma
Aca las libs: e8_libs.tar.gz - 4shared.com - online file sharing and storage - download
Aca el SDK del e8 (tambien funcion con em30):E8SDK_by_ilove3d_updated_with_Tulanix_SDK.tar.gz - 4shared.com - online file sharing and storage - download
Ahora dentro del SDK va ver el archivo env.sh, les recomiendo editar todo su contenido por este:
Code:
#!/bin/sh
export TOOLCHAIN=/home/usuario/e8-gcc
export QTDIR=/home/usuario/E8SDK
export TMAKEPATH=${QTDIR**/tmakelib/pwd/arm-linux-g++/
export PATH=${QTDIR**/bin:${TOOLCHAIN**/bin:${PATH** oBio que tiene que reemplazar el nombre usuario por el que tengan, les recomiendo que descompriman todos los paquetes en esa ruta (home/usuario)
3.- Una vez que hayan descomprimido todo en la ruta /home/usuario, y hayan editado el archivo env.sh veran que tendremos 3 carpetas, un llamada e8-gcc, otra E8SDK, y otra lib, bien ahora tenemos que copiar y reemplazar la carpeta lib a E8SDK, si lo hacemos con copiar y pegar no va funcionar, lo que tenemos que hacer es copiarla por terminal, ok ahora abrimos un terminal, nos situamos como root (sudo -i) nos situamos a la carpeta /home/usuario (cd /home/usuario) y escribimos el siguiente comando:
Listo tenemos nuestro entorno preparado y listo para compilar.
4.- Ahora necesitamos generar un proyecto un makefile, les recomiendo que todos los proyectos que hagan los guarden en la carpeta E8SDK, ok ahora creamos la carpeta ejemplo y dentro de esta creamos un archivo de texto con el gedit, copiamos este codigo:
Code:
#define QT_NO_DRAGANDDROP
#define QT_NO_PROPERTIES
#include <ZApplication.h>
#include <ZMessageDlg.h>
int main(int argc, char **argv)
{
ZApplication* a = new ZApplication(argc, argv);
ZMessageDlg* dlg = new ZMessageDlg(QString(“Hola Motoevo!”), QString(“Estas es una app hello world”), (ZMessageDlg::MessageDlgType)0 , 0 , NULL , “showQ” , true , 0);
a->setMainWidget(dlg);
dlg->show();
a->exec();
return 0;
** Otro dia lo analizaremos, ahora lo guardamos en la carpeta ejemplos con extencion cpp.
5.- Nos queda generar un .Pro y un Makefile para compilar nuestro binario, bien abrimos un terminal y nos situamos en la carpeta /home/usuario/E8SDK y vamos a rutear el env.sh (para que situemos donde esta el compilador y el SDK) lo hacemos de la siguiente forma:
. env.sh
6.- ahora nos situamos a la carpeta ejemplos, y escribimos el siguiente codigo:
progen -o ejemplo.pro
7.- Tenemos que generar el makefile, lo hacemos asi:
tmake ejemplo.pro -o Makefile
8.- ahora primero escribimos make clean y despues make. Debe compilar todo sin errores:

9.- Veremos que en la carpeta ejemplos hay un binario ese binario lo vamos a copiar a nuestro cel, ahora tenemos que conectarnos al telnet del cel (les recomiendo hacerlo en windows), por ej yo copie el binario a mi microsd /mmc/mmca1, entonces en la consola telnet escribimos lo siguiente:
/mmc/mmca1/ejemplo
y nos va devolver todos estos codigos:
Code:
Responsorium 1.1
Linux/armv6l 2.6.10_dev
(none) login: root
Mobilinux(TM) 4.1
root:~# /mmc/mmca1/exam
[*]QWidget::setMorphMode() is called. WinId=00000d50, newMode=-1
[*]Old mode = 2
[*]this->isActiveWidow() is FALSE
[*]Morphing Mode of TLW 00000d50 will be set to -1
QT Show: 2115 setAltitude and requestFocus, winId:3408, fget:1, alt:0, fixed:1,
order:1
[*]Morphing mode of current top level widget [ d50] is [-1]
Ahora tenemos que en el cel se haya ejecutado nuestro binario:

Y listo han creado su primer binario, ahora para compilarlo en mgx tienen que seguir este tuto [Tutorial] Crear aplicaiones *.mgx y en el cfg cambian el exec por el nombre de su binario.
Eso seria todo por ahora hice este tuto porque estoy rescatando unos archivos de mi anterior ubuntu (eran de mi MP) cualquier duda les respondere, salu2