Es conocido que Swift es un lenguaje de código abierto y también lo es que swiftc (El compilador de Swift) tiene la capacidad de compilar sobre Ubuntu Linux de forma oficial. Releases oficiales

Pero… se puede usar el compilador de Swift en otras distribuciones de Linux? Y lo más importante, es posible compilar y ejecutar un proyecto en una Raspberry Pi?

Es mas que posible, la comunidad ha avanado mucho des de la primera versión del compilador para linux y ha compilado Swift para multitud de distribuciones (ARC LINUX, GENTOO, DEBIAN…). Actualmente existen distintas formas de compilar swiftc para raspberry e incluso existen binarios precompilados para que podamos usarlos directamente.

Swift-Lite La forma más rápida y fácil de instalar y usar Swift en tu Raspberry Pi

Si vale… pero… ¿qué es Swift-Lite?

Swift-Lite es una versión reducida de Swift creada para SBC ARM como el que lleva nuestra Raspberry Pi y que ejecuta el sistema operativo Linux Raspbian basado en Debian.

Swift-Lite está construido a partir del repositorio oficial en Swift.org. Incluye el compilador de swift y librerías como Foundation, Dispatch y todas las librerías principales de Swift.

No se incluyen los complementos de Swift, como Package Manager, REPL, LLDB y XCTest. Lo que nos limita un poco si queremos tener un experiencia completa.

Esto da como resultado un tamaño de descarga e instalación muy reducido de 725 MB a 44 MB, pero sin reducir ni comprometer la funcionalidad principal de Swift.

Swift-Lite Raspberry Pi Edition es una instalación universal especial de Swift-Lite para todos los modelos de Raspberry Pi que ejecutan Raspbian Stretch. Swift-Lite RPE incluye la biblioteca GPIO para que pueda acceder y controlar los pines RPi GPIO sin tener que instalar ningún software adicional. Simplemente añadiendo import GPIO a nuestro fichero Swift.

Swift-Lite RPE es compatible con todos los modelos de Raspberry Pi. Esto significa que un ejecutable Swift que está construido en Raspberry Pi 3 funcionará en Raspberry Pi Zero / A + / 2, etc., incluido el soporte GPIO.

Vale Josep, esto suena muy bien, pero vamos al grano… ¿cómo se instala?

Lo primero que tenemos que tener en cuenta a la hora de instalar Swift-Lite es que tenemos que tener nuestro sistema actualizado, por lo que vamos a ejecutar los típicos comandos para actualizar nuestro repositorio de paquetes.

sudo apt-get update

Y seguidamente instalaremos las actualizaciones.

sudo apt-get upgrade

Una vez tengamos nuestro sistema operativo con los paquetes actualizados añadiremos el repositorio privado de Swift-Lite a nuestro sources.list, te recomiendo hacerlo de la siguiente forma:

curl -s https://packagecloud.io/install/repositories/swift-arm/swift-lite/script.deb.sh | sudo bash

Después de ejecutar esta linea deberemos volver a actualizar nuestro repositorio de paquetes con el comando mencionado anteriormente.

sudo apt-get update

Llegados a este punto ya tenemos la posibilidad de instalar Swift-Lite, vamos a ello!

sudo apt-get install swift-lite-rpi

Una vez finalizado el proceso de instalación podemos comprobar si funciona correctamente introduciendo en la terminal:

swift --version

La ejecución de esta linea debería decirnos algo similar a (dependiendo de la versión)

Swift version 5.0.* (swift-5.0-RELEASE)

Podríamos terminar aquí pero… que mejor que un Hello World! para probar que todo funciona bien no?

Hello World!

Para este paso puedes usar tu editor de texto preferido, yo para algo tan simple usaré la terminal.

Creamos un fichero llamado helloWorld.swift

touch helloWorld.swift

Una vez creado el fichero vamos a editarlo con nuestro editor preferido, yo usare nano para este ejemplo:

nano ./helloWorld.swift

Y añadimos un print con el texto “Hello Rasberry Pi!”

print("Hello Raspberry Pi!")

Guardamos el fichero y vamos a compilarlo! Introducimos la siguiente sentencia en la terminal:

swiftc ./helloWorld.swift

Compilará el fichero y veremos que nos crea un binario llamado helloWorld. Vamos a ejecutarlo!

./helloWorld                       
Hello Rasberry Pi!

Y esto es todo, en futuros post ampliare los conocimientos partiendo de esta base, como crear un proyecto, cómo usar un editor visual en la propia raspberry e incluso cómo usar Xcode para escribir el proyecto.

Si te interesa saber como editar, compilar, debugar… tus proyectos swift en Linux, revisa mi último artículo: Entornos de desarrollo Integrados (IDE) y editores Swift en Linux

Espero te haya servido este pequeño tutorial, hasta la próxima!

Last modified: November 24, 2019

Author

Comments

Write a Reply or Comment

Your email address will not be published.