SDK Multiplataforma en C logo

SDK Multiplataforma en C

Inicio rápido

Siguiente ❯

"...el número de instalaciones UNIX ha aumentado a 10, y se esperan más..." Dennis Ritchie y Ken Thompson - Junio de 1972


NAppGUI es un SDK para desarrollar proyectos software en lenguaje C que funcionen en cualquier plataforma de escritorio (Windows, macOS o Linux) (Figura 1). Se puede utilizar C++ pero no es indispensable. Podemos desarrollar un programa completo utilizando únicamente ANSI-C.

Captura de una aplicación en Windows, macOS y Linux escrita en C con NAppGUI.
Figura 1: NAppGUI permite portar de manera sencilla aplicaciones escritas en ANSI C.

1. Inicio rápido en Windows

Antes de empezar necesitas tener instaladas estas herramientas (Figura 2):

  • Visual Studio para compilar bajo Windows. Microsoft ofrece la versión gratuita Community.
  • CMake. Herramienta multiplataforma para crear los proyectos de compilación de forma automática, a partir del código fuente. Ten la precaución de seleccionar Add CMake to the system PATH for all users durante la instalación (Figura 3).
  • Git. Para descargar el proyecto desde GitHub.
  • Iconos de Visual Studio, CMake y Git.
    Figura 2: Herramientas básicas en Windows.
    El instalador de CMake mostrando la selección del PATH en Windows.
    Figura 3: Acceso a CMake desde la línea de comandos.

Desde una consola en Windows:

 
git clone --depth 1 https://github.com/frang75/nappgui_src.git
cd nappgui_src
cmake -S . -B build
cmake --build build --config Debug

Una vez compiladas, ya podrás ejecutar las aplicaciones de ejemplo existentes en el directorio \build\Debug\bin (Figura 4).

 
.\build\Debug\bin\Die.exe
.\build\Debug\bin\Bricks.exe
.\build\Debug\bin\Products.exe
.\build\Debug\bin\Col2dHello.exe
.\build\Debug\bin\GuiHello.exe
...
Ejecución de una aplicación de ejemplo en Windows.
Figura 4: Ejecución del programa de ejemplo Products tras la compilación.

2. Inicio rápido en macOS

Antes de empezar, asegurate que tienes instalado y configurado Xcode, entorno imprescindible para el desarrollo bajo macOS. También necesitarás descargar e instalar CMake desde www.cmake.org (Figura 5).

El bundle de CMake a punto de ser instalado en macOS.
Figura 5: Xcode y CMake en macOS.
For defecto, CMake no configura el acceso por línea de comandos en macOS. Puedes crear enlaces simbólicos con sudo "/Applications/CMake.app/Contents/bin/cmake-gui" --install.

Abre un terminal en macOS:

 
git clone --depth 1 https://github.com/frang75/nappgui_src.git
cd nappgui_src
cmake -G Xcode -S . -B build
cmake --build build --config Debug

Una vez compiladas, ya podrás ejecutar las aplicaciones de ejemplo existentes en el directorio /build/Debug/bin (Figura 6).

1
2
3
4
5
6
./build/Debug/bin/Die.app/Contents/MacOS/Die
./build/Debug/bin/Bricks.app/Contents/MacOS/Bricks
./build/Debug/bin/Products.app/Contents/MacOS/Products
./build/Debug/bin/Col2dHello.app/Contents/MacOS/Col2dHello
./build/Debug/bin/GuiHello.app/Contents/MacOS/GuiHello
...
Ejecución de una aplicación de ejemplo en macOS.
Figura 6: Ejecución del programa de ejemplo Bricks tras la compilación.

3. Inicio rápido en Linux

Antes de empezar, asegúrate que tienes instalados los compiladores, herramientas y librerías necesarias:

 
// Development tools
sudo apt-get install build-essential
sudo apt-get install git
sudo apt-get install cmake

// Development libraries (*)
sudo apt-get install libgtk-3-dev
sudo apt-get install libglu1-mesa-dev freeglut3-dev mesa-common-dev
sudo apt-get install libcurl4-openssl-dev
(*) Instalar explícitamente estas librerías solo es necesario en máquinas que vayan a compilar aplicaciones basadas en NAppGUI. Para ejecutar las aplicaciones no es necesario instalar nada, ya que las versiones de producción de estas librerías se encuentran de forma natural a partir de Ubuntu 12.04 LTS o distribuciones similares.

Abre un terminal:

 
git clone --depth 1 https://github.com/frang75/nappgui_src.git
cd nappgui_src
cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug
cmake --build build -j 4

Una vez compiladas, ya podrás lanzar las aplicaciones de ejemplo existentes en el directorio /build/Debug/bin (Figura 7).

 
./build/Debug/bin/Die
./build/Debug/bin/Bricks
./build/Debug/bin/Products
./build/Debug/bin/Col2dHello
./build/Debug/bin/GuiHello
...
Ejecución de una aplicación de ejemplo en Linux.
Figura 7: Ejecución del programa de ejemplo Col2dHello tras la compilación.

4. Licencia MIT

NAppGUI se distribuye bajo licencia MIT lo que significa, en esencia, que tienes total libertad para utilizar este software de forma libre y gratuita, tanto en proyectos comerciales como libres. La única restricción es que debes incluir una copia de esta Licencia en cada parte sustancial del software que distribuyas.


5. Conocimientos previos

Este libro no está dirigido a principiantes. Si bien el proyecto NAppGUI está orientado a simplificar la construcción de aplicaciones multiplataforma, requiere ciertos conocimientos previos por parte del usuario. Necesitarás, al menos, desenvolverte con soltura en C ó C++ ya que en ningún momento nos detendremos a explicar conceptos básicos de programación. Si vienes de Java o C# te convendría dar un repaso a los punteros. También necesitarás cierta habilidad con los entornos de desarrollo Visual Studio, Xcode y herramientas Unix como gcc, make o el intérprete de comandos.

Por otro lado, si eres un usuario avanzado, encontrarás un sistema sencillo para crear aplicaciones en C muy rápidas y de tamaño reducido que compilarán sin cambios en todos los entornos de escritorio. También tendrás a tu disposición un conjunto de librerías C para crear interfaces de usuario o aplicaciones por línea de comandos, sin necesidad de ensuciar tus proyectos con las engorrosas plantillas de clases que proporcionan stl o boost.


6. ¿Y ahora que?

Siguiente ❯