TODOPIC
Otros Microcontroladores / Dispositivos programables => Microcontroladores ARM => Mensaje iniciado por: planeta9999 en 17 de Noviembre de 2013, 20:29:22
-
Desce hace tiempo tengo la Raspberry la Beaglebone, y ya toca meter baza con estos chismes. Esperaba localizar con facilidad instrucciones para instalar un entorno de desarrollo con C++, gratuito, con Eclipse o QT, pero lo cierto es que la información que hay por la red es bastante ambigua.
Al final, he decidido probar VisualGDB, un plugin para Visual Studio, que va de maravilla, salvo por un problemilla que todavía no he resuelto con la Beaglebone.
Probado y funciona muy bien con Raspberry para aplicaciones C++ de texto, y C++ gráficas con librerias QT.
Probado con Beaglebone, funciona bien con aplicaciones C++ de texto, pero tengo problemas para aplicaciones gráficas con QT.
Como las intrucciones de instalación y configuración, están en la web de Sysprogs, pongo los enlaces, está muy bien documentado, paso a paso, con capturas de pantalla:
VisualGDB es un plugin que se instala sobre Visual Studio, osea que trabajamos desde Windows, y monta todo el sistema de Compilación cruzada, y además sincroniza automáticamente fuentes y objeto entre el PC y la placa (RPI o BBB). La instalación de todos los útiles, librerías QT y compilador cruzado, la hace automáticamente VisualGDB, salvo en el QT para Beaglebone, que es precisamente donde tengo problemas.
Descarga e instalación de VisualGDB: http://visualgdb.com/download/
Instalación y configuración para Raspberry (C++): http://visualgdb.com/tutorials/raspberry/crosscompiler/
Instalación y configuración para Raspberry (C++ / QT): http://visualgdb.com/tutorials/raspberry/qt-cross/
Instalación y configuración para Beaglebone (C++): http://visualgdb.com/tutorials/beaglebone/crosscompiler/
Instalación y configuración para Beaglebone (C++ / QT): http://visualgdb.com/tutorials/beaglebone/qt-embedded/
El producto no es gratuito, pero se puede bajar una versión trial, 100% funcional, que funciona durante 30 días, y la versión comercial solo cuesta 80 euros, una ganga.
Lo bueno de este producto, es que trabaja desde Windows, hace compilación cruzada para Linux, con opciones específicas para Raspberry y Beaglebone, usa como IDE Visual Studio (para los que ya conocemos este entorno, es una gran ventaja, eso que ya tenemos aprendido) y gestiona el Debug remoto.
El problema con Beaglebone y C++ con QT, me da en el paso 9 del manual, parece que falta algo: http://visualgdb.com/tutorials/beaglebone/qt-embedded/
Esta es la pantalla que me sale, en fin, he dejado un mensaje en el foro de Sysprog, a ver cual es el problema, porque todo lo demás va de fábula, y lo más probable es que lo compre.
(http://img812.imageshack.us/img812/2488/swlx.jpg)
-
Prueba de VisualGDB para Raspberry, un ejemplo básico con QT, una ventana principal con un botón que abre otra ventana con el "Hello World".
En la primera imagen, sobre Visual studio, el fuente, la compilación y la ejecución. En la segunda imagen, el objeto ejecutándose en el Raspberry.
Sigo sin resolver el problema para las aplicaciones gráficas con QT sobre Beaglebone, pero algo he descubierto, las librerias QT no se estaban instalando por falta de espacio, he preparado un arranque desde una SD de 16GB y ya he podido instalar las librerias QT4, pero ahora me da un problema con qmake.
Aplicación sobre Visual Studio, con VisualGDB y QT:
(http://imageshack.us/a/img40/2825/0f7c.jpg)
La misma aplicación rodando directamente sobre Raspberry. VisualGDB sincroniza y actualiza automáticamente fuentes y objeto desde el PC al Raspberry:
(http://imageshack.us/a/img200/9426/5u69.jpg)
-
Sobre el diseño gráfico, mi gozo en un pozo, pensé que desde Visual Studio se podría crear y editar el formulario gráfico con sus botones y demás, pero parece que no. En el fuente, el diseño gráfico está en un archivo con la extensión .UI, al abrirlo desde Visual Studio, se abre como un archivo de texto, no lo hace como un formulario para cambiar o poner botones y demás. Ese archivo .UI si se abre con QT Designer, si que se edita en formato gráfico.
Conclusión, la edición gráfica del formulario, solo se puede hacer con QT Designer :( :(
La única ventaja que tendría, por ahora VisualGDB es la compilación cruzada de Windows a Linux, la sincronización automática de fuentes-objeto, y el Debug, pero creo que se podrá hacer igualmente desde QT creator o Eclipse, configurando la llamada del compilador cruzado que ha descargado e instalado VisualGDB, que no es más que el GCC gratuito más las librerias QT.
Esta es la secuencia de comandos que ejecuta VisualGDB en Visual Studio, para la compilación cruzada, y que seguro se puede implementar en Eclipse, para hacer la llamada al mismo compilador, el vuelco del objeto al Raspberry se tendría que hacer a mano por SSH, y faltaría resolver el Debug, que se puede hacer con GDB (ya lo configuré para los ARM STM32):
1>------ Operación Generar iniciada: proyecto: LinuxProject1, configuración: Release Win32 ------
1>Compilación iniciada a las 18/11/2013 5:58:17.
1>Build:
1> VisualGDB: Attempting inline build...
1> VisualGDB: Executing prebuild actions
1> VisualGDB: Run "C:\SysGCC\raspberry\Qt\v4\qmake.exe LinuxProject1.pro CONFIGNAME=Release" in directory "c:\RPI\PRUEBAS\LinuxProject1\LinuxProject1" on local computer
1> VisualGDB: Run "cmd.exe /c "C:\SysGCC\raspberry\bin\make.exe"" in directory "c:\RPI\PRUEBAS\LinuxProject1\LinuxProject1" on local computer
1> C:/SysGCC/raspberry/bin/arm-linux-gnueabihf-g++.exe -c -pipe -Wno-psabi -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../sysgcc/raspberry/arm-linux-gnueabihf/sysroot/usr/share/qt4/mkspecs/arm-linux-gnueabihf -I. -I../../../../sysgcc/raspberry/arm-linux-gnueabihf/sysroot/usr/include/qt4/QtCore -I../../../../sysgcc/raspberry/arm-linux-gnueabihf/sysroot/usr/include/qt4/QtGui -I../../../../sysgcc/raspberry/arm-linux-gnueabihf/sysroot/usr/include/qt4 -IRelease -IRelease -o Release/LinuxProject1.o LinuxProject1.cpp
1> C:/SysGCC/raspberry/bin/arm-linux-gnueabihf-g++.exe -Wl,-O1 -o Release/LinuxProject1 Release/LinuxProject1.o Release/MainWindow.o Release/moc_MainWindow.o -LE:\Qt\4.8.5\lib -lQtGui -lQtCore -lpthread
1> VisualGDB: Executing postbuild actions
1>
1>Compilación correcta.
1>
1>Tiempo transcurrido 00:00:04.21
========== Generar: 1 correctos, 0 incorrectos, 0 actualizados, 0 omitidos ==========
En Visual Studio, el fichero .UI con las definiciones gráficas, solo se abre como un archivo de texto.
(http://imageshack.us/a/img96/7641/qx8v.jpg)
El mismo archivo abierto con QT Designer, ahora si que se puede trabajar el formulario de manera gráfica.
(http://imageshack.us/a/img28/3248/luew.jpg)
-
He localizado un plugin gratuito que integra QT en Visual Studio, de esta manera, al pinchar sobre el archivo .UI llama directamente a QT Designer, para trabajar el formulario de manera gráfica, también añade en el Wizard de Visual Studio, la creación de un proyecto QT básico.
Se puede descargar de aquí, es gratuito: https://download.qt-project.org/official_releases/vsaddin/qt-vs-addin-1.2.2-opensource.exe.mirrorlist
(http://www.wisegai.com/wp-content/uploads/2012/10/qtVS.png)
-
Muy bueno planeta999!! no sabía que habías avanzado tanto, ya me has adelantado :D
¿Te has planteado meterte a programar directamente en QT? se que al principio será un engorro (yo soy de VS también) pero estuve en un seminario sobre SBC y SOM y me recomendaron usarlo. Una vez te acostumbras no creo que sea tanto.
Lo único malo es que por lo que he visto googleando es que es más sencillo hacer la compilación cruzada desde Linux que desde windows.
¿Has conseguido hacer compilación cruzada directamente desde QT a la RPi o Beagle o solo desde VisualGDB?
Seguiré tu hilo para ver tus avances!!
Un saludo!
-
Muy bueno planeta999!! no sabía que habías avanzado tanto, ya me has adelantado :D
Ya vi tu post, yo estaba tratando de conseguir lo mismo pero por otro camino, asi si probamos cosas distintas podemos comparar a ver cual resulta más interesante.
Probé lo de la máquina virtual con Virtualbox, para instalar un linux sobre Windows, pero no va cara al aire, es lentísimo, asi que descarté lo de instalar QT sobre linux.
También descarté, lo de instalar QT directamente sobre Raspberry o Beaglebone, porque supongo que será lentísimo.
¿Te has planteado meterte a programar directamente en QT? se que al principio será un engorro (yo soy de VS también) pero estuve en un seminario sobre SBC y SOM y me recomendaron usarlo. Una vez te acostumbras no creo que sea tanto.
QT parece un entorno muy chulo, pero para RPI y BBB, si no podemos hacer compilación cruzada, y te obliga a instalarlo en Linux, no me gusta, aunque si que tendré que usar el QT Designer para hacer los formularios. Si es para desarrollar aplicaciones para PC, si que lo veo interesante, lo único malo es que ya estoy acostumbrado a Visual Studio, y empezar con un nuevo producto para hacer lo mismo, da bastante pereza, además el diseño de formularios en Visual Studio está totalmente integrado con el fuente, cosa que no hace QT.
Lo único malo es que por lo que he visto googleando es que es más sencillo hacer la compilación cruzada desde Linux que desde windows.
Lo malo es que eso te obliga a tener un PC con Linux, porque lo de las máquinas virtuales con Virtualbox o VMware es una auténtica chufa, no va cara al aire, y no me voy a comprar otro ordenador para instalar solo Linux, ni tampoco me gusta crear un engendro con un arranque dual en el mismo disco duro de mi pc actual. Lo de trabajar desde Linux, lo tengo practicamente descartado.
El VisualGDB es muy bueno, trabajas desde Windows, como IDE usas Visual Studio, y desde ahí te hace la compilación cruzada directamente para RPI o BBB, y te vuelca automáticamente por SSH los fuentes y el objeto para mantenerlo todo sincronizado. Solo me falta por probar el Debug, pero lo demás parece que va bastante bien.
¿Has conseguido hacer compilación cruzada directamente desde QT a la RPi o Beagle o solo desde VisualGDB?
Directamente desde QT no he probado nada todavía, solo con VisualGDB, y va de maravilla. Además acabo de resolver el problema que tenía con la Beaglebone y QT, ahora también me compila sin problemas para hacer aplicaciones gráficas BBB + QT. Haré más pruebas durante los 30 días de la versión trial, y si todo va bien, me compro la versión comercial, total por 80 euros vale la pena.
Seguiré tu hilo para ver tus avances!!
Un saludo!
Ok, yo estoy también atento a tu hilo, si consigues algún avance para trabajar directamente con QT y la compilación cruzada. En cuanto termine de probar bien el VisualGDB, quiero ver si consigo configurar Eclipse para que haga lo mismo.
De momento estoy muy contento con VisualGDB, me ha librado de tener que guerrear con un Linux instalado en una máquina virtual, o de tener que comprar otro PC solo para linux.
Al final yo resumiría las opciones de programar para RPI o BBB con C++, en estas:
- VisualGDB + Visual Studio + librerías QT, desde Windows (para mi la mejor por ahora)
- Instalar QT directamente en RPI o BBB, debe de ser lentísimo
- Instalar una máquina virtual con VMware o VirtualBox para rodar un linux desde Windows, y trabajar con QT y compilacion cruzada. Probado y es lento
- Comprar un PC, para instalar exclusivamente Linux y QT. Supongo que irá rápido, pero hay que hacer la inversión, y con la crisis no es plan, y tampoco me atrae mucho.
Saludos
-
No descartes lo de la máquina virtual, yo al principio pensaba lo mismo que tú, pero seguí jugando con las opciones, especialmente la asignación de recursos de RAM y conseguí que mi Windows XP embebido en una ventana funcione prácticamente igual que si lo tuviera instalado de forma nativa. Supongo que con Linux también se podrá conseguir.
Utilizo VMWare Workstation.
-
Interesante hilo, programo en la Beagleboard-XM pero para mis aplicaciones no tengo necesidad de hacer interfaces.
Lo de la compilación cruzada me interesa mucho, ya que siempre tengo que compilar desde la misma BB.
Mi duda es que si desde el VisualGDB puedo compilar cualquier código(por ejemplo un programa que utiliza librerías de Opencv, sdl, etc...(las cuales no están instaladas por defecto en el SO(Angstrom) de la BB)) y luego se ejecutan en la BB sin necesidad de instalar las librerías en la BB?
Gracias.
-
No descartes lo de la máquina virtual, yo al principio pensaba lo mismo que tú, pero seguí jugando con las opciones, especialmente la asignación de recursos de RAM y conseguí que mi Windows XP embebido en una ventana funcione prácticamente igual que si lo tuviera instalado de forma nativa. Supongo que con Linux también se podrá conseguir.
Utilizo VMWare Workstation.
Las pruebas las hicé con VirtualBox, instalando un Ubuntu (creo que la versión 13), y me iba muy lento, aunque mi PC tiene sus años, es un Pentium IV a 3Ghz con 4Gb de RAM y Windows XP SP3, le asigne 1GB de Ram a la máquina virtual. Igual con un PC más moderno funciona mejor.
De todas formas, ya tengo casi resuelta la compilación cruzada para Raspberry y Beaglebone, desde Windows con QT (sin necesidad de usar VisualGDB), así que prescindiré de meterme en fregaos con linux. Incluso se puede tener un escritorio remoto en Windows, de RPI o BBB, usando SmarTTY o Xming, para hacerlo todo desde Windows.
-
Interesante hilo, programo en la Beagleboard-XM pero para mis aplicaciones no tengo necesidad de hacer interfaces.
Lo de la compilación cruzada me interesa mucho, ya que siempre tengo que compilar desde la misma BB.
Mi duda es que si desde el VisualGDB puedo compilar cualquier código(por ejemplo un programa que utiliza librerías de Opencv, sdl, etc...(las cuales no están instaladas por defecto en el SO(Angstrom) de la BB)) y luego se ejecutan en la BB sin necesidad de instalar las librerías en la BB?
Gracias.
Las pruebas que he hecho son con las librerías de QT, pero no hay problema puedes hacerlo con cualquier librería siempre que estén tanto en la BB como en el PC, para que el compilador cruzado las pueda utilizar, para eso es imprescindible tener sincronizados ambos, hay un programita que permite hacerlo, es muy fácil. Lo que si que tendrás que hacer primero es instalar las librerías que necesites, en la BB.
Ya tengo prácticamente resuelta la compilación cruzada desde Windows para RPI y BBB, directamente desde QT, sin necesidad de usar VisualGDB, es decir todo 100% gratuito. En cuanto lo tenga todo documentado y probado lo cuelgo, se podrá trabajar todo 100% desde el PC bajo Windows, incluso puedes arrancar un escritorio remoto para arrancar y visualizar las aplicaciones gráficas desde el PC, pero ejecutándose en RPI o BBB.
-
Ya tengo prácticamente resuelta la compilación cruzada desde Windows para RPI y BBB, directamente desde QT, sin necesidad de usar VisualGDB, es decir todo 100% gratuito. En cuanto lo tenga todo documentado y probado lo cuelgo, se podrá trabajar todo 100% desde el PC bajo Windows, incluso puedes arrancar un escritorio remoto para arrancar y visualizar las aplicaciones gráficas desde el PC, pero ejecutándose en RPI o BBB.
¿Ya lo tienes? ¿sin usar maquinas virtuales ni nada? que crack!!! ((:-)) :D Espero ansiosamente ese tutorial. Yo he estado probando desde linux pero sigo teniendo errores.
-
Ya tengo prácticamente resuelta la compilación cruzada desde Windows para RPI y BBB, directamente desde QT, sin necesidad de usar VisualGDB, es decir todo 100% gratuito. En cuanto lo tenga todo documentado y probado lo cuelgo, se podrá trabajar todo 100% desde el PC bajo Windows, incluso puedes arrancar un escritorio remoto para arrancar y visualizar las aplicaciones gráficas desde el PC, pero ejecutándose en RPI o BBB.
¿Ya lo tienes? ¿sin usar maquinas virtuales ni nada? que crack!!! ((:-)) :D Espero ansiosamente ese tutorial. Yo he estado probando desde linux pero sigo teniendo errores.
La compilación desde Windows (sin máquinas virtuales), usando un compilador cruzado funciona perfectamente, ahora estoy tratanto de configurarlo todo en QT Creator, como no conozco el producto me está costando un poco, pero si lanzado a pelo desde una ventana DOS compila, tiene que poder hacerlo igual desde QT, solo habrá que configurar en el Build and Run, el Kit, versiones y compiladores.
Los Toolchain con los compiladores cruzados, para RPI y BBB, te los puedes descargar de aquí, te lo instalan todo en el PC, en el directorio C:\SysGCC:
Toolchain para Raspberry: http://gnutoolchains.com/raspberry/raspberry-gcc4.6.3.exe
Toolchain para Beaglebone: http://gnutoolchains.com/beaglebone/beaglebone-gcc4.7.3.exe
Con el QTCrossTool, sincronizas las librerias de RPI o BBB, con las de QT en el PC, tienes que tener conectada la placa por Ethernet al PC:
http://visualgdb.com/tools/QtCrossTool/QtCrossTool.zip
(http://visualgdb.com/tools/QtCrossTool/img/01-setup.png)
En cuanto al PC, tienes que instalar las librerias de QT versión 4, porque para la RPI y BBB, parece que no está disponible la versión 5, yo me he bajado la 4.8.5.
http://download.qt-project.org/official_releases/qt/4.8/4.8.5/qt-win-opensource-4.8.5-vs2010.exe
http://download.qt-project.org/official_releases/qt/4.8/4.8.5/qt-win-opensource-4.8.5-mingw.exe
En la RPI y la BBB, también tienes que instalar las librerias de QT:
Para la BBB con estos comandos:
opkg update
opkg install qt4-embedded --force-depends
opkg install libqtcoree-dev libqtguie-dev
Y para la RPI, con estos:
sudo apt-get update
sudo apt-get install libqt4-dev
Puedes probar a compilar a pelo, desde una ventana DOS, con estos comandos:
<cross-toolchain path>\bin\qmake.bat <project name>.pro
<cross-toolchain path>\bin\make
Donde <cross-toolchain path> lo reemplazas por el directorio donde hayas instalado los toolchains para cada uno, en mi caso los tengo en C:\SysGCC\Raspberry y C:\SysGCC\Beaglebone, y <project name> lo reemplazas por el nombre de tu proyecto, por ejemplo pruebas.pro, osea que quedaría algo así:
C:\SysGCC\Raspberry\bin\qmake.bat pruebas.pro
C:\SysGCC\Raspberry\bin\make
C:\SysGCC\Beaglebone\bin\qmake.bat pruebas.pro
C:\SysGCC\Beaglebone\bin\make
De la web de Sysprogs, te puedes bajar este proyecto básico, para hacer pruebas con la compilación desde una ventana DOS:
http://visualgdb.com/tools/QtCrossTool/BasicQtProject.zip
(http://visualgdb.com/tools/QtCrossTool/img/04-build.png)
En cuanto te haya compilado, puedes subir el binario por SSH a la RPI o BBB, usando por ejemplo SmarTTY: http://smartty.sysprogs.com/download/SmarTTY-1.0.msi
Y ruedas el objeto en la RPI o BBB, con:
chmod a+x ./<Binary name>
./<Binary name>
El chmod solo la primera vez para cambiar los permisos de ejecución del binario, la ejecución del programa es ./programa
Con SmarTTY para la RPI puedes abrir un escritorio remoto para lanzar el programa desde el PC, para la BBB se puede usar el nautilus o trabajar directamente en cada placa.
(http://visualgdb.com/tools/QtCrossTool/img/05-qtapp.png)
-
QUE BUEENOOOO!!!! ((:-)) Felicidades.
Ahora mismo estoy compilando las librerías en Ubuntu, pero cuando tenga un rato probare lo que explicas en Windows.
Yo estuve probando con QT5 en windows y me volví loco... Con el QT4 todavía no he probado. Al final lo que hice es hacerme una partición para Ubuntu en el mismo PC.
Espero que hacer la compilación cruzada desde Ubuntu con QT5 no de los problemas que dices que ocurren, porque igual estoy perdiendo el tiempo... :?
Un saludo Planeta999!! Buen trabajo!
-
QUE BUEENOOOO!!!! ((:-)) Felicidades.
Ahora mismo estoy compilando las librerías en Ubuntu, pero cuando tenga un rato probare lo que explicas en Windows.
Yo estuve probando con QT5 en windows y me volví loco... Con el QT4 todavía no he probado. Al final lo que hice es hacerme una partición para Ubuntu en el mismo PC.
Espero que hacer la compilación cruzada desde Ubuntu con QT5 no de los problemas que dices que ocurren, porque igual estoy perdiendo el tiempo... :?
Un saludo Planeta999!! Buen trabajo!
No creo que sea un problema de Windows o Ubuntu, es que para RPI y BBB, creo que las librerías de QT solo están disponibles en la versión 4, ambos productos en el PC y en la placa tienen que tener instalada la misma versión de las librerías de QT o darán problemas.
Puedes instalarte QT5, pero necesitarás también las librerias QT4 para la compilación cruzada, al final del paquete completo de QT5 utilizarás el QT Creator como IDE para editar los fuentes y el QT Designer para diseñar gráficamente los formularios, pero a la hora de compilar tendrás que usar las librerías de QT4, previamente sincronizadas con las QT de RPI o BBB.
-
Sobre el uso de QT5, esta es la respuesta que me dan los de Sysprogs:
VisualGDB could theoretically work with Qt5, but we are currently not officially supporting it as there is no current way to just apt get install Qt5 on Raspberry Pi and Beaglebone. The only way to use Qt5 on Raspberry Pi and Beaglebone is to compile it from sources yourself.
Osea que a menos que te compiles los fuentes de QT5 en la RPI o la BBB, no te va a funcionar, por eso mejor trabajar con las librerias de QT4 que si funcionan sin problemas para la compilación cruzada. Las librerias de QT en el PC y en la RPI o BBB, tienen que ser de la misma versión, no puedes usar QT5 en el PC y QT4 en la RPI/BBB.
-
A ver si me queda claro planeta999...
Para RPi o BBB debería instalar estas librerías:
(http://imageshack.us/a/img39/2572/ae2h.png)
Para Ubuntu u otro SO Linux en el PC debería instalar estas:
(http://imageshack.us/a/img834/8692/idx0.png)
y para Windows, dependiendo de si vas a usar VS o minGW estas:
(http://imageshack.us/a/img541/9216/lv1q.png)
Entonces, ¿Hay que instalar en cada sistema (PC o RPi) sus librerías correspondientes? pensaba que había que instalar las embedded linux en los dos para que el programa que crees en el PC sea compatible con las librerías de RPi.
Lo que si que hay que instalar en el PC es el compilador GCC para ARM (el compatible con RPi o BBB) para compilar los programas para funcionar en sistema ARM en este caso la RPi o BBB.
Te dejo un enlace de como hacerlo para Eclipse por si a alguien le interesa: Configuración Eclipse para RPi (http://lslutnfra.blogspot.com.es/2013/07/configurar-eclipse-para-raspberry-pi.html)
-
A ver si me queda claro planeta999...
Para RPi o BBB debería instalar estas librerías:
Si te refieres a la instalación en RPI y BBB, yo he instalado las librerías QT4 desde cada uno de ellos con estos comandos:
Para la BBB:
opkg update
opkg install qt4-embedded --force-depends
opkg install libqtcoree-dev libqtguie-dev
Y para la RPI:
sudo apt-get update
sudo apt-get install libqt4-dev
Para Ubuntu u otro SO Linux en el PC debería instalar estas:
Supongo que si, pero yo en linux no lo he probado
y para Windows, dependiendo de si vas a usar VS o minGW estas:
Si, pero en el caso de minGW, también tendrás que tener instalado minGW, porque ese paquete no lo instala, y para más inri si vas a la web del proyecto minGW, la versión compatible con QT4 ya no está disponible, pero buscando por internet la localicé en esta web: http://nosymbolfound.blogspot.com.es/2012/12/since-until-now-qt-under-windows-is.html
Entonces, ¿Hay que instalar en cada sistema (PC o RPi) sus librerías correspondientes? pensaba que había que instalar las embedded linux en los dos para que el programa que crees en el PC sea compatible con las librerías de RPi.
Las librerías en RPI y BBB, se instalan desde cada una con los comandos que he comentado, y una vez instaladas las librerias QT4 en el PC, tienes que sincronizarlo todo, para que todas las cabeceras y librerías estén también en el PC y con idéntica versión, imprescindible para que la compilación cruzada funcione.
Puedes sincronizar PC y RPI/BBB con QTCrossTool http://visualgdb.com/tools/QtCrossTool/QtCrossTool.zip
(http://visualgdb.com/tools/QtCrossTool/img/01-setup.png)
Lo que si que hay que instalar en el PC es el compilador GCC para ARM (el compatible con RPi o BBB) para compilar los programas para funcionar en sistema ARM en este caso la RPi o BBB.
Eso te lo instalan los programas que ya indiqué, te lo hacen todo automáticamente, colocando compiladores cruzados y todo lo necesario en C:\SysGCC. Además del compilador GCC, también instalan GDB, necesario para hacer Debug.
Toolchain para Raspberry: http://gnutoolchains.com/raspberry/raspberry-gcc4.6.3.exe
Toolchain para Beaglebone: http://gnutoolchains.com/beaglebone/beaglebone-gcc4.7.3.exe
(http://gnutoolchains.com/raspberry/tutorial/img/01-toolchain.png)
(http://img194.imageshack.us/img194/5484/9dq0.jpg)
Te dejo un enlace de como hacerlo para Eclipse por si a alguien le interesa: Configuración Eclipse para RPi (http://lslutnfra.blogspot.com.es/2013/07/configurar-eclipse-para-raspberry-pi.html)
El problema de ese tutorial es que no contempla QT, es solo para hacer programas en C++ pelaos, con salida de texto, para QT es más complejo.
-
No descartes lo de la máquina virtual, yo al principio pensaba lo mismo que tú, pero seguí jugando con las opciones, especialmente la asignación de recursos de RAM y conseguí que mi Windows XP embebido en una ventana funcione prácticamente igual que si lo tuviera instalado de forma nativa. Supongo que con Linux también se podrá conseguir.
Utilizo VMWare Workstation.
+1... En el laburo lo trabajamos de esa manera, con Oracle VM VirtualBox instalando un Debian.
Buenos avances!
Saludos!
-
¡¡¡ Conseguido ¡¡¡
Ya me funciona QT Creator desde Windows compilando C++ para Raspberry y Beaglebone, solo tengo un problemilla con unas librerias de la BBB, pero con la RPI funciona al 100%.
Ha sido algo complicado, sobre todo porque no conocía QT Creator, y todos sus entresijos, básicamente la definición de los "path" para que el compilador encuentre librerias y cabeceras, pero al final ha salido.
Solo me falta configurar la actualización automática para que QT Creator suba el solito el objeto compilado a la tarjeta por Ethernet en cuanto la compilación termina con éxito, también me falta ver como se configura y funciona el Debug, pero lo más importante y complicado ya funciona, edición y compilación cruzada C++ desde Windows para RPI y BBB.
En cuanto tenga un ratillo subo un post con detalles paso a paso, para instalarlo y configurarlo todo. Por supuesto, todos los útiles necesarios son gratuitos.
:-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/ :-/
Aquí el post, con intrucciones para instalar y configurar Qt bajo Windows para RPI y BBB.
http://www.todopic.com.ar/foros/index.php?topic=41770.0