Skip to content

Archives

  • enero 2022
  • diciembre 2021
  • noviembre 2021
  • octubre 2021
  • septiembre 2021

Categories

  • No hay categorías
Trend RepositoryArticles and guides
Articles

Eclipse 4.3 (Kepler) para la programación en C/C++

On noviembre 9, 2021 by admin

Eclipse es un Entorno de Desarrollo Integrado (IDE) de código abierto apoyado por IBM. El sitio madre es @ www.eclipse.org. Eclipse es popular para el desarrollo de proyectos Java. También soporta C/C++, PHP, Python, Perl, y otros desarrollos de proyectos web a través de plug-ins extensibles. Eclipse es multiplataforma y se ejecuta bajo Windows, Linux y Mac OS.

  • Cómo instalar Eclipse C/C++ Development Tool (CDT) 8.1.2 para Eclipse 4.2.2 (Juno)
  • Escribiendo su primer programa C/C++ en Eclipse
  • Programa C++
  • Programa C
  • Programa C++ con Makefile
  • Lea la documentación
  • La depuración de programas C/C++ en Eclipse CDT
  • Tips &Trucos
  • Desarrollo de software C/C++ utilizando GCC
  • E/S de archivos en Eclipse

Cómo instalar Eclipse C/C++ Development Tool (CDT) 8.1.2 para Eclipse 4.2.2 (Juno)

Paso 0: Instalar MinGW GCC o Cygwin GCC

Para utilizar Eclipse para la programación en C/C++, se necesita un compilador de C/C++. En Windows, puede instalar MinGW GCC o Cygwin GCC. Elija MinGW si no está seguro, porque MinGW es más ligero y fácil de instalar, pero tiene menos características.

  1. MinGW GCC: Lea «Cómo instalar MinGW».
  2. Cygwin GCC: Lea «Cómo instalar Cygwin». Asegúrese de seleccionar los paquetes «gcc«, «g++«, «gdb» y «make» en la categoría «Devel» (Desarrollo) – estos paquetes no forman parte de la instalación por defecto.
Paso 1: Instalar Eclipse C/C++ Development Tool (CDT)

Dos maneras de instalar CDT, dependiendo de si ha instalado previamente un Eclipse:

  1. Si ya ha instalado «Eclipse for Java Developers» u otros paquetes de Eclipse, podría instalar el plug-in de CDT de la siguiente manera:
    Inicie Eclipse ⇒ Ayuda ⇒ Instalar nuevo software ⇒ En el campo «Work with», despliegue el menú desplegable y seleccione «Kepler – http://download.eclipse.org/releases/kepler» (o juno para Eclipse 4.2; o helios para Eclipse 3.7).
    En la casilla «Nombre», expanda el nodo «Lenguaje de programación» ⇒ Marque «Herramientas de desarrollo C/C++» ⇒ «Siguiente» ⇒ … ⇒ «Finish».
  2. Si no tiene instalado ningún paquete de Eclipse, puede descargar «Eclipse IDE for C/C++ Developers» desde http://www.eclipse.org/downloads, y descomprimir el archivo descargado en un directorio de su elección.
Paso 2: Configuración

No necesita realizar ninguna configuración, siempre y cuando los binarios Cygwin o MinGW estén incluidos en la variable de entorno PATH. CDT busca en PATH para descubrir los compiladores C/C++.

Escribiendo su primer programa C/C++ en Eclipse

Programa C++

Paso 0: Inicie Eclipse
  1. Inicie Eclipse ejecutando «eclipse.exe» en el directorio instalado de Eclipse.
  2. Elija un directorio apropiado para su espacio de trabajo (es decir, donde desee guardar sus trabajos).
  3. Si aparece la pantalla de «bienvenida», ciérrela haciendo clic en el botón «cerrar».
Paso 1: Crear un nuevo proyecto C++

Para cada aplicación C++, es necesario crear un proyecto para guardar todos los códigos fuente, archivos de objetos, archivos ejecutables y recursos relevantes.

Para crear un nuevo proyecto C++:

  1. Elija el menú «Archivo» ⇒ «Nuevo» ⇒ Proyecto… ⇒ C/C++ ⇒ Proyecto C++.
  2. Se abre el cuadro de diálogo «Proyecto C++».
    1. En el campo «Nombre del proyecto», introduzca «FirstProject«.
    2. En la casilla «Tipos de proyecto», seleccione «Ejecutable» ⇒ «Proyecto vacío».
    3. En la casilla «Cadenas de herramientas», elija su compilador, por ejemplo, «Cygwin GCC» o «MinGW GCC» ⇒ Siguiente.
    4. Aparece el cuadro de diálogo «Seleccionar configuraciones». Seleccione tanto «Debug» como «Release» ⇒ Finalizar.
    Paso 2: Escribir un programa Hello-world C++
    1. En el «Explorador de proyectos» (panel más a la izquierda) ⇒ Haga clic con el botón derecho del ratón en «FirstProject» (o utilice el menú «Archivo») ⇒ Nuevo ⇒ Archivo de origen.
    2. Se abre el diálogo «Nuevo archivo de origen».
      1. En el campo «Archivo fuente», introduzca «Hello.cpp«.
      2. Haga clic en «Finalizar».
    3. El archivo fuente «Hello.cpp» se abre en el panel del editor (haga doble clic en «test.cpp» para abrirlo si es necesario). Introduzca los siguientes códigos:
      #include <iostream>using namespace std; int main() { cout << "Hello, world!" << endl; return 0;}
    Si aparece el error «inclusión no resuelta»

    Si aparece el error «inclusión no resuelta» junto a la sentencia #include, las «rutas de inclusión para las cabeceras» no están configuradas correctamente. Seleccione el menú «Proyecto» ⇒ Propiedades ⇒ C/C++ General ⇒ Rutas y símbolos ⇒ En la pestaña «Includes»:

    Para Cygwin GCC:

    1. «Añada» los siguientes directorios a «GNU C», donde $CYGWIN_HOME es su directorio instalado de Cygwin:
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include-fixed
      • $CYGWIN_HOME\usr\include
      • $CYGWIN_HOME\usr\include\w32api
    2. «Añadir» los siguientes directorios a «GNU C++», donde $CYGWIN_HOME es su directorio instalado en Cygwin:
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include\c++
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include\c++\i686-pc-cygwin
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include\c++\backward
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include-fixed
      • $CYGWIN_HOME\usr\include
      • $CYGWIN_HOME\usr\include\w32api

    Para MinGW GCC:

    1. «Añada» los siguientes directorios a «GNU C», donde $MINGW_HOME es su directorio instalado de MinGW:
      • $MINGW_HOME\lib\gcc\mingw32.6.x\include
      • $MINGW_HOME\include
      • $MINGW_HOME\lib\gcc\mingw32.6.x\include-fixed
    2. «Añadir» los siguientes directorios a «GNU C++», donde $MINGW_HOME es su directorio instalado en Cygwin:
      • $MINGW_HOME\lib\gcc\mingw32.6.x\include\c++
      • $MINGW_HOME\lib\gcc\mingw32.6.x\include\c++\mingw32
      • $MINGW_HOME\lib\gcc\mingw32.6.x\include\c++\backward
      • $MINGW_HOME\lib\gcc\mingw32.6.x\include
      • $MINGW_HOME\include
      • $MINGW_HOME\lib\gcc\mingw32.6.x\include-fixed

    NOTA: Para encontrar las rutas de las cabeceras, puedes hacer una búsqueda en cabeceras como «stdio.h» (para C) y «iostream» (para C++) bajo el directorio instalado de Cygwin o MinGW.

    Nota: Si encuentra «error al cargar bibliotecas compartidas» durante el enlace. Instale «libmpfr4» en cygwin.
    Paso 3: Compilar/Construir

    Haga clic con el botón derecho en el «FirstProject» (o utilice el menú «Proyecto») ⇒ elija «Construir proyecto» para compilar y enlazar el programa.

    Paso 4: Ejecutar

    Para ejecutar el programa, haga clic con el botón derecho del ratón en el «FirstProject» (o en cualquier lugar de la fuente «test.cpp«, o seleccione el menú «Ejecutar») ⇒ Ejecutar como ⇒ Aplicación local de C/C++ ⇒ (Si lo pide, elija el depurador gdb de Cygwin) ⇒ La salida «¡Hola, mundo!» aparece en el panel de la «Consola».

    NOTA: Necesita crear un nuevo proyecto C++ para CADA uno de sus problemas de programación. Esto es un lío para escribir programas de juguete!

    Programa C

    Siga los mismos pasos que arriba. Crea un «Proyecto C» (en lugar de «Proyecto C++»). Prueba el siguiente programa Hello-world (llamado «Hello.c«).

    #include <stdio.h> int main() { printf("Hello, world!\n"); return 0;}

    Programa C++ con Makefile

    En los ejemplos anteriores, utilizamos el llamado managed-make donde Eclipse generó automáticamente un makefile para construir el programa. También podemos optar por escribir nuestro propio makefile para tener un control total del proceso de construcción.

    Paso 1: Crear un proyecto C++ Makefile

    Desde el menú «File» ⇒ New ⇒ Project… ⇒ C/C++ ⇒ Proyecto C++ ⇒ En «Nombre del proyecto», introducir «HelloCppMakefile» ⇒ En «Tipo de proyecto», elegir «Proyecto Makefile «, «Proyecto vacío» ⇒ En «Cadenas de herramientas», elegir «Cygwin GCC» o «MinGW GCC». Ignore el mensaje de advertencia.

    Paso 2: Escribir un programa C++

    Haga clic con el botón derecho en el proyecto ⇒ Nuevo ⇒ Archivo fuente ⇒ En «Archivo fuente», introduzca «Hello.cpp» ⇒ Introduzca los siguientes códigos fuente:

    #include <iostream>using namespace std; int main() {cout << "Hello, world!" << endl;return 0;}
    Paso 3: Escribir un Makefile

    Haga clic con el botón derecho del ratón en el proyecto ⇒ Nuevo ⇒ Archivo ⇒ En «Nombre de archivo», introduzca «makefile» ⇒ Introduzca los siguientes códigos. Tenga en cuenta que debe utilizar un tabulador (NO espacios) para la sangría.

    all: Hello.exe clean:rm Hello.o Hello.exe Hello.exe: Hello.og++ -g -o Hello.exe Hello.o Hello.o: Hello.cppg++ -c -g Hello.cpp
    Paso 4: Construir el proyecto

    Haga clic con el botón derecho del ratón en el proyecto ⇒ Construir proyecto.

    Paso 5: Ejecutar el programa

    Haga clic con el botón derecho del ratón en el proyecto ⇒ Ejecutar como ⇒ Aplicación local C/C++.

    Escriba un makefile para compilar programas de juguete bajo un proyecto.

    Lea la documentación

    Como mínimo, DEBERÍA hojear la «Guía del usuario de Workbench» y la «Guía del usuario de desarrollo de C/C++» de Eclipse – accesibles a través de la página de «Bienvenida» o del menú «Ayuda» de Eclipse. Esto le ahorrará muchas horas de agonía tratando de averiguar cómo hacer algunas cosas más tarde.

    La depuración de programas C/C++ en Eclipse CDT

    Poder utilizar un depurador de gráficos para depurar el programa es crucial en la programación. Podría ahorrarle innumerables horas adivinando lo que salió mal.

    Paso 0: Escribir un programa en C++ – El siguiente programa calcula e imprime el factorial de n (=1*2*3*...*n). El programa, sin embargo, tiene un error lógico y produce una respuesta errónea para n=20 («The Factorial of 20 is -2102132736» – ¡¿un número negativo?!).

    1234567891011121314
    #include <iostream>using namespace std; int main() { int n = 20; int factorial = 1; // n! = 1*2*3...*n for (int i = 1; i <= n; i++) { factorial *= i; } cout << "The Factorial of " << n << " is " << factorial << endl; return 0;}
    The Factorial of 20 is -2102132736

    Usemos el depurador gráfico para depurar el programa.

    Paso 1: Establecer un punto de interrupción inicial – Un punto de interrupción suspende la ejecución del programa para que usted pueda examinar los estados internos (por ejemplo, valor de las variables) del programa. Antes de iniciar el depurador, debe establecer al menos un punto de interrupción para suspender la ejecución dentro del programa. Establezca un punto de interrupción en la función main() haciendo doble clic en el margen izquierdo de la línea que contiene main(). Aparecerá un círculo azul en el margen izquierdo indicando que se ha establecido un punto de interrupción en esa línea.

    Paso 2: Iniciar el depurador – Haga clic con el botón derecho del ratón en el proyecto (o utilice el menú «Ejecutar») ⇒ «Depurar como» ⇒ «Aplicación local de C/C++» ⇒ elija «Sí» para cambiar a la perspectiva de «Depuración» (Una perspectiva es una disposición particular de los paneles para adaptarse a una determinada tarea de desarrollo como la edición o la depuración). El programa comienza a ejecutarse pero suspende su funcionamiento en el punto de interrupción, es decir, la función main().

    Como se ilustra en el siguiente diagrama, la línea resaltada (también señalada por una flecha azul) indica la sentencia que se ejecutará en el siguiente paso.

    Paso 3: Paso a paso y observación de las variables y salidas – Haga clic en el botón «Paso a paso» (o seleccione «Paso a paso» en el menú «Ejecutar») para recorrer su programa en un solo paso. En cada paso, examine el valor de las variables (en el panel «Variable») y las salidas producidas por su programa (en el panel «Consola»), si las hay. También puede colocar el cursor en cualquier variable para inspeccionar el contenido de la misma.

    Pasar por el programa y observar los valores de las variables internas y las salidas producidas es el medio definitivo para depurar programas – ¡porque es exactamente como el ordenador ejecuta su programa!

    Paso 4: Punto de interrupción, Ejecutar a la línea, Reanudar y Terminar – Como se ha mencionado, un punto de interrupción suspende la ejecución del programa y le permite examinar los estados internos del mismo. Para establecer un punto de interrupción en una declaración en particular, haga doble clic en el margen izquierdo de esa línea (o seleccione «Toggle Breakpoint» en el menú «Run»).

    «Resume» (reanudar) continúa la ejecución del programa, hasta el siguiente punto de interrupción, o hasta el final del programa.

    «Single-step» (un solo paso) a través de un bucle con un gran recuento consume mucho tiempo. Puede establecer un punto de interrupción en la declaración inmediatamente fuera del bucle (por ejemplo, la línea 12 del programa anterior), y emitir «Reanudar» para completar el bucle.

    Alternativamente, puede colocar el cursor en una declaración particular, y emitir «Ejecutar a la línea» desde el menú «Ejecutar» para continuar la ejecución hasta la línea.

    «Terminar» termina la sesión de depuración. Siempre termine su sesión de depuración actual usando «Terminate» o «Resume» hasta el final del programa.

    Paso 5: Volver a la perspectiva C/C++ – Haga clic en el icono de la perspectiva «C/C++» en la esquina superior derecha para volver a la perspectiva «C/C++» para seguir programando (o en el menú «Ventana» ⇒ Abrir perspectiva ⇒ C/C++).

    No puedo recalcar más que dominar el uso del depurador es crucial en la programación. Explore las características proporcionadas por los depuradores.

    Otras características del depurador

    Modificar el valor de una variable: Puede modificar el valor de una variable introduciendo un nuevo valor en el panel «Variable». Esto es útil para modificar temporalmente el comportamiento de un programa, sin cambiar el código fuente.

    Step-Into y Step-Return: Para depurar una función, es necesario utilizar «Step-Into» para entrar en la primera sentencia del método. Puede utilizar «Step-Return» para volver al llamador, en cualquier parte del método. Alternativamente, usted podría establecer un punto de interrupción dentro de un método.

    NOTA: Si usted recibe el mensaje de error «No se puede encontrar un archivo de origen en /cygdrive/c…» durante la depuración, es necesario configurar un mapeo entre «/cygdrive/c» y «c:/» (suponiendo que su programa en guardado en la unidad c. Desde «Ventana» ⇒ «Preferencias» ⇒ «C/C++» ⇒ «Debug» ⇒ «Common Source Lookup Path», seleccione «Add» ⇒ «Path Mapping».

    Tips &Trucos

    Lea los Tips &Trucos de Eclipse para Java para obtener consejos generales en el uso de Eclipse.

    Desarrollo de software C/C++ utilizando GCC

    1. Puede encontrar los comandos utilizados en Eclipse CDT para construir el proyecto en «<workspace>\.metadata\.plugins\org.eclipse.cdt.ui\global-build.log«.
    2. Configuración de include-paths, library-paths y bibliotecas: Al construir el programa, el compilador necesita los archivos de cabecera para compilar los códigos fuente; el enlazador necesita las bibliotecas para resolver las referencias externas. El compilador busca en las «rutas de inclusión» las cabeceras especificadas en las directivas #include. El enlazador busca en los «library-paths» las «bibliotecas» necesarias para enlazar el programa. En GCC, el include-path se especifica mediante la opción -Idir o la variable de entorno CPATH. La ruta de la biblioteca se especifica a través de la opción -Ldir o la variable de entorno LIBRARY_PATH. La biblioteca libxxx.a se especifica a través de la opción -lxxx (letra minúscula 'l', sin el prefijo lib y la extensión .a).
      En Eclipse CDT, puede establecer las rutas de inclusión, las rutas de biblioteca y las bibliotecas haciendo clic con el botón derecho del ratón en el proyecto ⇒ Propiedades ⇒ C/C++ General ⇒ Rutas y símbolos ⇒ En las pestañas «Includes», «Library Paths» y «Libraries». Los ajustes son aplicables sólo al proyecto seleccionado.
      Para establecer las rutas de inclusión y las rutas de biblioteca para todos los proyectos, establezca las variables de entorno CPATH y LIBRARY_PATH. En Eclipse, elija «Ventana» ⇒ Preferencias ⇒ C/C++ ⇒ Construir ⇒ Entorno.
      Alternativamente, copie las cabeceras y las bibliotecas en los directorios del sistema, y puede omitir las rutas de inclusión y las rutas de biblioteca.
    3. OpenGL con GLUT: Para Cygwin, necesita instalar gcc, g++, gdb, make (bajo la categoría Devel) y opengl, freeglut (bajo la categoría graphics). Las cabeceras gl.h, glu.h, glut.h se guardan en $cygwin\usr\include\w32api\GL. Utilice #include <GL/gl__.h> para incluir las cabeceras. Las bibliotecas libopengl32.a libglu32.a y libglut32.a se guardan en $cygwin\lib\w32api. Para especificar estas bibliotecas en la vinculación, utilice -lopengl32 -lglu32 -lglut32 opciones (sin el prefijo lib y la extensión .a).
    4. OpenGL con SDL: Descargue SDL desde http://www.libsdl.org. Elija Bibliotecas de desarrollo ⇒ win32 ⇒ mingw32 ⇒ Descomprimir. Copie el directorio de cabeceras SDL (bajo include) en $cygwin\usr\include\w32api; copie todos los archivos de biblioteca en lib en $cygwin\lib\w32api; copie la biblioteca de tiempo de ejecución SDL.dll (bajo bin) en Windows/System32. En su programa, incluya estas dos cabeceras: #include <SDL/sdl.h> y #include <SDL/sdl_opengl.h>. Para enlazar, añada estas bibliotecas: -lSDL -lSDLmain.
    5. #directiva de comentario pragma: la directiva de comentario pragma, por ejemplo, #pragma comment(lib, "opengl32.lib"), se utiliza a menudo para incluir una biblioteca concreta (igual que la opción -l). Esta directiva dependiente del sistema funciona en el compilador de Windows, pero NO en GCC.
    6. Error «multiple target patterns»: Hay un problema con GNU make (en $Cygwin\bin\make.exe). Reemplazado por esta copia @ http://www.cmake.org/files/cygwin/make.exe.
    7. fflush(stdout): La biblioteca gcc utiliza E/S en búfer (de acuerdo con la especificación C). La salida sólo se escribe en el flujo de salida después de un carácter de nueva línea. Se puede tirar la salida con un fflush().
    8. El nombre del proyecto no debe incluir la palabra «setup»: Si nombras tu proyecto C/C++ con un nombre que incluya la palabra «setup«, entonces el «*setup*.exe» resultante activará el UAC (User Authorization Control) y requerirá derechos de administrador para ejecutarse. (¡Esto me llevó unas cuantas horas descubrirlo! Intente renombrar un «hello.exe» a «mysetup.exe«.)

    E/S de archivos en Eclipse

    Referirse a Eclipse para la E/S de archivos de Java.

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Archivos

  • enero 2022
  • diciembre 2021
  • noviembre 2021
  • octubre 2021
  • septiembre 2021

Meta

  • Acceder
  • Feed de entradas
  • Feed de comentarios
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress