Compilation de LibSass avec MinGW (makefiles)
Téléchargez d'abord le dernier programme d'installation de MinGW pour Windows. Une fois installé, cliquez sur «Continuer» ou ouvrez le gestionnaire d'installation via bin\mingw-get.exe.
Les composantes suivantes doivent être installés :

Ensuite, nous devons installer Git pour Windows. Vous souhaiterez probablement cocher l'option permettant de l'ajouter au chemin global, mais vous n'avez pas besoin d'installer les outils Unix.
Si vous souhaitez exécuter la suite de tests de spécifications, vous aurez également besoin de Ruby et de quelques gem. Téléchargez le dernier installateur et assurez-vous de l'ajouter au chemin global. Installez ensuite les gem manquantes :
gem install minitest |
Monter le répertoire racine de MinGW
Comme indiqué dans le guide de démarrage de MinGW, vous devez modifier C:\MinGW\msys\1.0\etc\fstab pour y ajouter la ligne suivante :
C:\MinGW /mingw |
Démarrage d'une console MinGW
Créez un fichier de traitement par lots contenant ce contenu :
@echo off set PATH=C:\MinGW\bin;%PATH% REM nécessaire uniquement s'il n'est pas déjà disponible set PATH=%PROGRAMFILES%\git\bin;%PATH% REM C:\MinGW\msys\1.0\msys.bat cmd |
Exécutez-le et assurez-vous que les commandes suivantes peuvent être appelées : git, mingw32-make, rm et gcc ! Une fois tout configuré, vous devriez être prêt à compiler libsass !
Récupérez les sources
# l'utilisation de git est préférée git clone https://github.com/sass/libsass.git # nécessaire uniquement pour sassc et/ou testsuite git clone https://github.com/sass/sassc.git libsass/sassc git clone https://github.com/sass/sass-spec.git libsass/sass-spec |
Choisir une bibliothèque statique ou partagée
Libsass peut être compilée et liée en tant que bibliothèque statique ou partagée. La valeur par défaut est statique. Pour la modifier, vous pouvez définir la variable d'environnement BUILD :
set BUILD="shared" |
Compiler la bibliothèque
mingw32-make -C libsass |
Les résultats peuvent être trouvés dans :
$ ls libsass/lib libsass.a libsass.dll libsass.so |
Exécutez la suite de tests de spécifications
mingw32-make -C libsass test_build |
Construction via MingGW 64 bits (makefiles)
Construction de libass en DLL sous Windows 64 bits.
Téléchargez MinGW64 pour Windows 7 64 bits et décompressez-le dans «C:\mingw64».
Créez un fichier batch avec ce contenu :
@echo off set PATH=C:\mingw64\bin;%PATH% set CC=gcc REM nécessaire uniquement s'il n'est pas déjà disponible set PATH=%PROGRAMFILES%\Git\bin;%PATH% REM C:\MinGW\msys\1.0\msys.bat cmd |
Par défaut, la DLL mingw64 dépend de «mingwm10.dll, libgcc_s_dw2-1.dll», nous pouvons modifier le Makefile pour résoudre ce problème : (ajouter «-static»).
lib/libsass.dll: $(COBJECTS) $(OBJECTS) $(RCOBJECTS) $(MKDIR) lib $(CXX) -shared $(LDFLAGS) -o $@ $(COBJECTS) $(OBJECTS) $(RCOBJECTS) $(LDLIBS) -s -static -Wl,--subsystem,windows,--out-implib,lib/libsass.a |
Compiler la bibliothèque
mingw32-make -C libsass |
Au fait, si vous utilisez Java JNA, JNAerator est un bon outil.