ImageImageImageImage
Hazte Socio (El Foro siempre Gratis)
Paga con Tarjetas+ Info www.arde.cc/socios

Raspberri 2: instalación C++

Postea todo lo relacionado con el mundo de los microcontroladores aquí

Moderator: Junta Directiva

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Raspberri 2: instalación C++

Post by fusion » Mon Oct 26, 2015 8:51 pm

(reeditado el título)

Hola, tengo una rasberri pi 2 b+ (esa con conector de 40 pines) con debian Jessie, g++, escritorio LDXE y en principio uso geany para editar y compilo desde línea de comandos o con un makefile hecho a mano.
Me ha costado tres tardes ponerlo a andar, pero la verdad que estoy muy contento de contar con 4 procesadores y subirlos a 900Mhz :mrgreen: ya puedo comandar el puerto paralelo y el serie :), el problema es que compilar a mano es un poco peñazo, me gustaría compilar con geany pero no sé como se configura para compilar más de un fichero cpp (uno contiene la librería)

Otro problema es que no puedo pararlo con un halt o desde el escritorio cuando he trabajado sobre ella un rato.
Last edited by fusion on Mon Nov 23, 2015 3:10 pm, edited 1 time in total.

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Raspberri 2: duda de geany sobre linux

Post by fusion » Fri Oct 30, 2015 9:53 pm

Vale, me respondo yo mismo: El geany compila un solo fichero, el otro lo he de poner en la cabecera deal anterior con un include, por ejemplo si compilo a.cpp, libreria.cpp y libreria.h, he de poner al principio de a.cpp:

#include "libreria.h"
#include "libreria.cpp"

El problema de que no se me apaga lo he arreglado bajando el raspbian jessie y clonando la imagen en la sd, tal y como aparece en el link:
https://www.raspberrypi.org/downloads/raspbian/
Instalación:
https://www.raspberrypi.org/documentati ... /README.md

El usuario y login son:
usuario: pi
login: raspberry

Lo bueno de la imagen es que ya trae cosas preinstaladas:
- el escritorio (con explorador de archivos, editor de comandos y navegador),
- el último g++ y el debugger gdb
- librería termios para uso de puertos y algunas cosas más ya preinstaladas

Lo malo es que trae también el libreoffice que a ver si desinstalo

Ahora hacer funcionar el raspi-config para expandir la sd, configurar teclado (el de defecto 105 teclas intl y luego español), hora y meter overclocking si se quiere y cambiar contraseña (recomendado):

Code: Select all

sudo raspi-config
Solo le he instalado el Geany con el apt-get y a correr :)
Alternativamente va fenomenal instalar el codelite, que ademas tiene preinstalado el wxwidgets con el que puedes crear ventanas con botones y demas de una forma muy sencilla :)

ALTERNATIVA:si instalas raspbian jessie lite ocuparas SOLO 830Mb, pero has de instalar el escritorio LXDE

El jessie-lite+ lightdm (fundamental)+lxde ocupa en total 2.1 gigas, subiendo a 2.2 gigas si incluyo geany con debugger :) (ver mas abajo para ver como se instalan)
El jessie-completo-office ocupa en total 3.9 gigas incluyendo geany con debugger :(

Instalacion de LXDE sobre raspbian/jessie-lite:

Code: Select all

sudo apt-get update
sudo apt-get install lightdm
sudo apt-get install lxde
Last edited by fusion on Tue Feb 16, 2016 5:19 pm, edited 9 times in total.

Ranganok
Usuario Desarrollador
Usuario Desarrollador
Posts: 3874
Joined: Mon Nov 07, 2005 3:10 pm
Location: Barbaros del Valle
Contact:

Re: Raspberri 2: duda de geany sobre linux

Post by Ranganok » Sun Nov 01, 2015 12:03 pm

Si mal no recuerdo con geany tienes que compilar desde el make, es decir tienes que montar un fichero makefile con el script de compilación.

Nunca inluyas un .cpp, pues lo que estás haciendo es copiar todo el código del fichero dentro de otro fichero, y los .h los tienes que marcar con

Code: Select all

#ifdef LOQUESEA_H

// aquí va el código del .h

#endif
S2

Ranganok Schahzaman
skiras.blogspot.com

"En igualdad de condiciones la explicación más sencilla es la cierta"

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Raspberri 2: duda de geany sobre linux

Post by fusion » Sun Nov 01, 2015 2:37 pm

Entonces tendré que buscar como se edita y mete el makefile en el geany para que si hay un error me lo localice geany directamente en el fichero. También me queda ver como hacer debugging con geany :)

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Raspberri 2: duda de geany sobre linux

Post by fusion » Mon Nov 02, 2015 9:10 am

Después de clonar la tarjeta como dije conviene (si se quiere) desinatalar Mathematica:
sudo apt-get update
sudo apt-get purge wolfram-engine

Y libreoffice:
sudo apt-get remove --purge libreoffice*

Y limpiar luego:
sudo apt-get clean
sudo apt-get autoremove
Last edited by fusion on Thu Nov 12, 2015 5:14 pm, edited 2 times in total.

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Raspberri 2: duda de geany sobre linux

Post by fusion » Tue Nov 03, 2015 3:26 pm

Es curioso, con la sd así creada la he pinchado en una raspberry-1 y ¡funciona!, solo he tenido que cambiar en una libreria mmGpio.h la dirección de los puertos digitales y lo he compilado todo y funciona, aunque algo más lento, lo que no sé si vá del todo bien son los relojes pues se ha calentado mucho, a ver si es que la he hecho ir a 900Mhz :oops:

Para instalar geany:
sudo apt-get install geany
sudo apt-get install geany-plugin-debugger

(para ver todos los plugins: apt-cache search geany)

Después de todo esto:
sudo apt-get update
sudo apt-get upgrade
Last edited by fusion on Thu Nov 12, 2015 5:31 pm, edited 2 times in total.

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Raspberri 2: duda de geany sobre linux

Post by fusion » Thu Nov 12, 2015 3:15 pm

Es importante activar el puerto RS232 pues por defecto se usa para otra cosa, para ello hay que hacer:

sudo nano /boot/cmdline.txt
entonces QUITAR: console=ttyAMA0,115200 guardar: ^X Y enter y reiniciar

Es el momento de hacer backup en otra SD (ya he matado una):

Si la metes en un ordenador linux:
Desmontarla (se puede hacer en el escritorio o en linea de comandos)
sudo umount /dev/mmcblk0p1
sudo umount /dev/mmcblk0p2
sudo dd if=/dev/mmcblk0 of=/media/misbackups/mibackup.img bs=1M

Luego clonarla como se hizo con el jessie metiendo la nueva sd:
dd bs=1M if=mibackup.img of=/dev/mmcblk0
Last edited by fusion on Wed Jan 27, 2016 9:41 am, edited 2 times in total.

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Raspberri 2: instalación C++

Post by fusion » Mon Nov 23, 2015 3:13 pm

Aquí explica como se instala OPENCV, y además como se compila empleando los 4 núcleos 8O

Instalación de opencv

Hay que decir que es facilísimo incluir biblioteca y compilación multitareas, por lo que veo el sistema fundamenteal para el uso en robots con visión artificial

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Raspberri 2: instalación C++

Post by fusion » Wed Jan 27, 2016 9:45 am

Para cambiar la velocidad del puerto serie de la raspberry desde 9600 baudios:

sudo nano /boot/config.txt

añadir la linea (para por ejemplo 115200):

init_uart_baud=115200

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Raspberri 2: instalación C++

Post by fusion » Tue Feb 16, 2016 9:40 am

Ya he arreglado el geany, en la pestaña Build (o construccion), en setting (ultima pestañe de abajo) se pone los siguientes argumentos:

Compilation: g++ -pthread -std=c++11 -o3 -t4 -Wall -c "%f"
Build: g++ -pthread -std=c++11 -Wall -o "%e" "%f"
Execute: sudo "./%e"

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest