domingo, 10 de octubre de 2010

Compilar frei0r para Windows desde Cygwin

Vamos a compilar "fuera del árbol de código". Así podemos tener un directorio para cada compilación (uno para Cygwin, otro para MinGW32, otro para MinGW64)
mkdir frei0r-mingw32; cd frei0r-mingw32

Queremos compilación cruzada (de Cygwin a MingGW32), así que hay que especificar a CMake el compilador que queremos, dónde están los includes/libs de MinGW32, y dónde queremos instalar los binarios resultantes. El último parámetro es dónde está nuestro código fuente.

Creamos los "makefiles"
CFLAGS=-march=core2 cmake \
-D CMAKE_HOST_SYSTEM_NAME=Unix \
-D CMAKE_SYSTEM_NAME=Windows \
-D CMAKE_C_COMPILER=/usr/bin/i686-w64-mingw32-gcc.exe \
-D CMAKE_CXX_COMPILER=/usr/bin/i686-w64-mingw32-g++.exe \
-D CMAKE_FIND_ROOT_PATH=/usr/i686-w64-mingw32/sys-root/mingw/ \
-D CMAKE_INSTALL_PREFIX=/usr/i686-w64-mingw32/sys-root/mingw/ \
../frei0r-plugins-1.2/


Compilamos
make

Dejamos los módulos mondos y lirondos
/usr/bin/i686-w64-mingw32-strip src/*/*/*.dll

Instalamos
make install

Copiamos el include
cp -p ../frei0r-plugins-1.2/include/frei0r.h /usr/i686-w64-mingw32/sys-root/mingw/include

No hay comentarios:

Publicar un comentario