SUMO (Simulation of Urban MObility, en http://goo.gl/W8r9Vz) es un micro-simulador de tráfico distribuido bajo licencia GPL v3 disponible para Windows, GNU/Linux y OSX.
Este fin de semana lo he instalado en una máquina Windows, y sin problema (doble click y arreando), en una GNU/Linux y lo mismo (un poco más porque había que compilar los fuentes, pero fácil siguiendo el tutorial), pero al llegar a OSX, no había manera. Como me ha costado un poco, dejo la receta aquí abajo para quien tenga la necesidad, que lo pueda compilar y hacer funcionar rápido.
- Instalar las command-line-tools. Si tenéis Xcode instalado, no hay problema. Si no, para instalarlas es tan fácil como invocar un comando que venga incluido en ellas, como por ejemplo
git
. - Instalar Homebrew. Paquete esencial para tener los mínimos quebraderos de cabeza posibles. Como dicen en la página principal, se instala lanzando el comando
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
. - Instalar las dependencias de SUMO. Con el comando
brew install Caskroom/cask/xquartz homebrew/x11/fox gdal xerces-c
. - Exportar las variables de entorno CPPFLAGS y LDFLAGS. Para compilar los fuentes y enlazar los compilados:
export CPPFLAGS="$CPPFLAGS -I/usr/local/include/python2.7 -I/usr/local/include -I/opt/X11/include -I/usr/X11/include/freetype2"
yexport LDFLAGS="$LDFLAGS -lpython2.7 -L/usr/local/lib -L/usr/X11/lib"
- Descargar los fuentes de SUMO y descomprimirlos. Algo hay que compilar, ¿no? pues eso,
wget http://www.dlr.de/ts/en/Portaldata/16/Resources/sumo/sumo-src-0.23.0.zip
(o la versión que corresponda) y descomprimirlo (vamos a suponer que está descomprimido en/Users/neko/Downloads/sumo-0.23.0
). Si no tenemoswget
instalado, basta con instalarlo a través de brew (brew install wget
) o descargar el fichero de cualquier otra forma. - Compilar los fuentes. Para ello, accedemos al directorio (
cd /Users/neko/Downloads/sumo-0.23.0
), preparamos los fuentes con el comando./configure --with-fox-config=/usr/local/Cellar/fox/1.6.49/bin/fox-config -with-proj-gdal=/opt/local --with-xerces=/opt/local --prefix=/opt/sumo
, compilamos con el comandomake -j4
e instalamos consudo make install
sudo porque lo queremos instalar en/opt/sumo
, tal y como pone en el parámetro--prefix
del comando configure.
Si todo ha ido correcto, SUMO estará instalado en /opt/sumo
. Para lanzarlo, los ejecutables serán /opt/sumo/bin/sumo
y /opt/sumo/bin/sumo-gui
, dependiendo de si queremos lanzar la simulación sin o con gráficos respectivamente.
Al lanzar el entorno gráfico de simulación puede salir el siguiente error:
FXApp::openDisplay: unable to open display :0.0
No pasa nada, es simplemente que el servidor de las X tiene que estar corriendo. Estará dentro de /Applications/Utilities
, pero con escribir X11 en spotlight lo encontrará sin problemas.
Espero que os haya servido de mucho. ¡Que disfrutéis con vuestras simulaciones!