El tutorial que veremos en realidad es algo burdo y simple, sin embargo el objetivo es ver que como podemos resolver los problemas que tengamos haciendo codigo(en este caso operaciones simples como sumar, restar, etc) swift en linux. Vamos alla!.

Crearemos una clase llamada Operacion.swift con el siguiente codigo:

public class Operacion{


 public init() {

 }

 public func sumar(a:Int, b:Int) -> Int {
     return a+b
   }

   public func restar(a:Int, b:Int) -> Int {
     return a - b
   }

   public func dividir(a:Int, b:Int) -> Int {
     return a / b
   }

   public func multiplicar(a:Int, b:Int) -> Int {
     return a * b
   }

}

Posteriormente procedemos a crear otro archivo llamado, Calculadora.swift, de esta forma(esta archivo invocara al primero):

import operacion

var opera = Operacion()
var suma = opera.sumar(a: 2,b:4)
print("La suma es: \(suma)")

Procedemos a compilar el programa, para ello, tipeamos en la terminal:

swiftc Calculadora.swift

Nos dara como respuesta un bonito error:

Calculadora.swift:1:8: error: no such module 'operacion'

El compilador intenta llamar a nuestro archivo Operacion.swift como si fuera un modulo, bien; no nos complicamos, y creamos el modulo:

swiftc -emit-library Operacion.swift -module-name operacion //crea la libreria
swiftc -emit-module -module-name operacion Operacion.swift  //permite que el modulo sea importable

Posteriormente procedemos a crear los ejecutables:

swiftc -I. -c Calculadora.swift //toma el directorio actual para compilar y buscar los modulos
swiftc -o Calculadora.exe Calculadora.o -L. -loperacion //crea el ejecutable
LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH ./Calculadora.exe

Y obtenemos el siguiente resultado:

La suma es: 6
La resta es: -2
La division es: 0
La multiplicacion es: 8

Pueden revisar el codigo fuente desde aqui