Programación C para RasPi (I) 10

Para todos los neófitos en lenguaje C, y más aún para los desconocedores de Linux, la compilación de programas en la Raspberry Pi puede resultar un obstáculo insalvable, pero vamos a intentar desmitificar esta barrera y proporcionar a los más noveles en esto del C una base sólida a partir de la cual podrán comenzar a experimentar más y más con su pequeña tarjeta Linux.

En este punto deberíamos aclarar que el sistema operativo Linux que opera en la Raspberry Pi no es, esencialmente, tan diferente de cualquier distribución Linux instalada en un PC. Una característica que define al sistema Linux es su total integración con el lenguaje C (no hemos de olvidar que comparten orígenes), por lo que programar en C en nuestra RasPi no requiere instalación de software añadido alguno… si, has escuchado bien, el C y el Linux coexisten en nuestra pequeña tarjeta.

Así que, explicado este punto, vamos a comenzar a utilizar el entorno Linux para programar en lenguaje C. Y como no hay mejor manera de iniciarse que con un ejemplo vamos a emular a Dennis Ritchie (creador del lenguaje C) y a recrear uno de sus más conocidos ejemplos….

Como diría Jack el destripador … “vayamos por partes” 😉

(1) En nuestro terminal Linux verificamos que el entorno C está instalado y listo para su uso. Para ello ejecutamos gcc -v , a continuación se nos mostrarán una serie de parámetros (en cuya descripción no entraremos ahora) y que serán algo así:

 

(2) Borramos nuestra pantalla (clear) y a continuación:

– vamos a la carpeta raiz de nuestro usuario (en pincipi, pi) -> cd /home/pi

– verificamos que estamos realmente ahí -> pwd

– creamos la carpeta curso para colocar el código escrito/generado -> mkdir curso

– verificamos que la carpeta está correctamente creada -> ls -l

– entramos en la carpeta -> cd curso

– verificamos (opcionalmente) de nuevo nuestra ubicación -> pwd

– ahora creamos un fichero vacio -> touch hola.c

– verificamos que se ha creado y está vacío (ocupa 0 bytes) -> ls -l

– lo editamos (usamos el mini editor nano) -> nano hola.c

– escribimos “algo original” en nuestro primer programa

#include <stdio.h>

int main() {
   printf(“Hola Mundo desde mi RasPi ….”);
   return 0;
}

– salimos y guardamos (Ctrl-X, Si, Enter)

– verificamos que hola.c ya no ocupa 0 bytes -> ls -l

– opcionalmente podemos verificar rápidamente el contenido -> more hola.c

– compilamos el programa hola.c así (es un ejemplo) -> gcc -o holaPi hola.c

vemos que en la línea de comandos hemos indicado:

gcc => llamada al compilador C del Linux

-o holaPi => indicamos el nombre de salida del fichero ejecutable

hola.c => indicamos el nombre del fichero fuente a compilar

– vemos qué es lo que se ha generado en /curso -> ls -l

 

¡¡Problema !! … vemos que el resultado no es exactamente el esperado ya que se imprime el texto programado pero ¡¡ no se salta a la línea siguiente !!.  Para solucionar esto hemos de editar nuestro programa y añadir un caracter de control que C interprete como salto de línea. En este caso es : \n . por lo que el nuevo código quedará así:

#include <stdio.h>

int main() {
printf(“Hola Mundo desde mi RasPi ….\n”);
return 0;
}

– editamos y corregimos

 

– compilamos de nuevo, obteniendo

Espero que este primer y muy básico ejemplo os haya sido de utilidad.

Continuará …….

10 thoughts on “Programación C para RasPi (I)

  1. Reply Anónimo Mar 8,2013 10:57 pm

    wow muy buenos tus aportes gracias y saludos

  2. Reply Willlyonme May 11,2013 8:44 pm

    Comienzo muy útil ya que hace años que no programo.

    Gracias por tu aportación.

  3. Reply anin Jun 27,2013 9:17 pm

    Hola, me gustaria saber como puedes poner el codigo en C en colores ya que para mi es muy interesante editar el codigo en C con colores para identificar bien las partes del codigo.

    • Reply Kike Jul 1,2013 5:33 pm

      El propio editor nano colorea el codigo, ya que al editar un fichero .c asume que su contendo esta escrito en dicho lenguaje

  4. Reply Anónimo Sep 18,2014 9:06 pm

    realmente interesante, gracias por el aporte.. Si puedes postea como controlas las librerias gpio por C, quisiera saber como lo haces y ver si funciona de la misma manera

  5. Reply Saturos Feb 3,2015 4:40 pm

    Gracias ahora gracias ati empiezo a programar mi proyecto final de carrera.

    Arduino más raspberry comunicado en i2c.

  6. Reply rimartin Sep 19,2016 4:42 pm

    El mejor y mas sencillo punto de arranque para programar en C sobre Raspberry.
    Saludos.

  7. Reply Alfonso Vernuchil Jun 13,2017 4:57 am

    excelente post
    me preguuntaba si pudieras explicar como hacer un puente entre aplicaciones de distintos lenguajes o de distinti ejecutable
    gracias me sirvio de mucha ayuda

  8. Reply Anónimo Oct 15,2017 6:37 pm

    Gracias. Muy fácil.

  9. Reply Rafa Oct 16,2017 8:14 pm

    Cómo instalar el entorno c. En el arduino Yun.
    Escribo gcc -v y me da un fallo.

Leave a Reply

  

  

  

  Bitcoin Currency Converter
Amount of BTC to convert
To currency:
1BTC =