Installation d'un environnement de compilation Windows: Difference between revisions
No edit summary |
reflect changes in en version |
||
Line 219: | Line 219: | ||
== Création de l'installeur == | == Création de l'installeur == | ||
Pour compiler l'installeur vous aurez besoin de [http://nsis.sourceforge.net/Main_Page NSIS] avec le [http://nsis.sourceforge.net/UnTGZ_plug-in plugin UnTGZ] installé. Vous devez également avoir makensis.exe dans votre path (par exemple dans /opt/nsis). | |||
Pour créer l'installeur, configurer et compiler Bluefish avec les commandes suivantes : | Pour créer l'installeur, configurer et compiler Bluefish avec les commandes suivantes : | ||
<pre> | <pre> | ||
./configure CONFIG_SITE=win32/config.nsis | |||
cd win32 | cd win32 | ||
. | make -f Makefile.mingw installer | ||
</pre> | </pre> | ||
== notes et références == | == notes et références == | ||
<references/> | <references/> |
Revision as of 09:02, 23 September 2009
Compilation Windows : Statut
Le binaire et les plugins s'exécutent et semblent pleinement fonctionnels. Si vous rencontrez un comportement inattendu ou des bugs, merci de bien vouloir signaler le problème sur notre système de suivi de problèmes : bugzilla.
- Problèmes connus :
- Le code connecteur réseau (socket) ne fonctionne pas et donc les fichiers ne peuvent être ouverts dans une fenêtre fille.
Installer votre environnement de compilation
La première étape est évidemment d'installer et configurer les environnements MinGW et MSYS. Commencer par l'installeur automatisé de MinGW. Au cours de l'installation choisir le compilateur g++ (ne pas choisir MingW make). L'emplacement recommandé est C:\MinGW, mais il n'est pas obligatoire de choisir ce chemin. Il faut ensuite installer le système de base de MSYS. L'emplacement de l'environnement MingW vous dera demandé. Si par exemple vous l'avez installé dans P:\Programs\MinGW, répondez
p:/programs/mingw
à cette question (note: cette information sera inscrite dans /etc/fstab de l'environnement MSYS).
Si vous savez ce que vous faîtes, vous pouvez alternativement télécharger et installer (unzip/untar/...) manuellement les paquets .
Mettre à jour l'environnement de compilation
La seconde étape consiste à mettre à jour et/ou installer tous les logiciels nécessaires. Vous pouvez les télécharger et les extraire manuellement. Vous devez les extraire dans le répertoire où vous avez installé MSYS. Cet emplacement est usuellement C:\Programs\msys\1.0\ (ou C:\MingGW\). Gardez en mémoire que cet emplacement équivaut au répertoire racine (root directory) / et à /usr/ (qui sont le même emplacement) dans MSYS. Note: de même /local and /usr/local désignent le même répertoire.
- Paquets MinGW installation à la racine de MingW (C:\MinGW\)
- w32api-3.13-mingw32-dev.tar.gz
- mingw-utils-0.3.tar.gz
- mingwrt-3.16-mingw32-dev.tar.gz
- mingwrt-3.16-mingw32-dll.tar.gz
- Paquets MSYS installation dans le répertoire racine de MSYS "/" (C:\Programs\msys\1.0\ ou C:\MinGW\)
- msysCORE-1.0.11-bin.tar.gz
- autoconf-2.63-1-msys-1.0.11-bin.tar.lzma
- automake-1.11-1-msys-1.0.11-bin.tar.lzma
- bison-2.4.1-1-msys-1.0.11-bin.tar.lzma
- bzip2-1.0.5-1-msys-1.0.11-bin.tar.gz
- crypt-1.1_1-2-msys-1.0.11-bin.tar.lzma
- findutils-4.4.2-1-msys-1.0.11-bin.tar.lzma
- flex-2.5.35-1-msys-1.0.11-bin.tar.lzma
- gawk-3.1.7-1-msys-1.0.11-bin.tar.lzma
- gdbm-1.8.3-2-msys-1.0.11-bin.tar.lzma
- gettext-0.17-1-msys-1.0.11-bin.tar.lzma
- grep-2.5.4-1-msys-1.0.11-bin.tar.lzma
- groff-1.20.1-1-msys-1.0.11-bin.tar.lzma
- guile-1.8.7-1-msys-1.0.11-bin.tar.lzma
- gzip-1.3.12-1-msys-1.0.11-bin.tar.lzma
- libbz2-1.0.5-1-msys-1.0.11-dll-1.tar.gz
- libcrypt-1.1_1-2-msys-1.0.11-dll-0.tar.lzma
- libgdbm-1.8.3-2-msys-1.0.11-dll-3.tar.lzma
- libguile-1.8.7-1-msys-1.0.11-dll-17.tar.lzma
- libiconv-1.13.1-1-msys-1.0.11-bin.tar.lzma
- libltdl-2.2.7a-1-msys-1.0.11-dll-7.tar.lzma
- libminires-1.02_1-1-msys-1.0.11-dll.tar.lzma
- libopenssl-0.9.8k-1-msys-1.0.11-dll-098.tar.lzma
- libregex-1.20090805-1-msys-1.0.11-dll-1.tar.lzma
- libtool-2.2.7a-1-msys-1.0.11-bin.tar.lzma
- lndir-1.0.1-1-msys-1.0.11-bin.tar.gz
- m4-1.4.13-1-msys-1.0.11-bin.tar.lzma
- man-1.6f-1-msys-1.0.11-bin.tar.lzma
- minires-1.02_1-1-msys-1.0.11-bin.tar.lzma
- openssl-0.9.8k-1-msys-1.0.11-bin.tar.lzma
- patch-2.5.9-1-msys-1.0.11-bin.tar.lzma
- perl-5.6.1_2-1-msys-1.0.11-bin.tar.lzma
- sed-4.2.1-1-msys-1.0.11-bin.tar.lzma
- tar-1.22-1-msys-1.0.11-bin.tar.lzma
- vim-7.2-1-msys-1.0.11-bin.tar.lzma
- zlib-1.2.3-1-msys-1.0.11-dll.tar.gz
- Paquets GNOME installation dans le répertoire local de MSYS "/local" (C:\Programs\msys\1.0\local\ ou C:\MinGW\local\)
- atk_1.26.0-1_win32.zip
- atk-dev_1.26.0-1_win32.zip
- cairo_1.8.8-1_win32.zip
- cairo-dev_1.8.8-1_win32.zip
- expat_2.0.1-1_win32.zip
- expat-dev_2.0.1-1_win32.zip
- GConf_2.22.0-2_win32.zip
- GConf-dev_2.22.0-2_win32.zip
- gettext-runtime-0.17.zip
- gettext-runtime-dev-0.17.zip
- gettext-tools-0.17.zip
- glib_2.20.4-1_win32.zip
- glib-dev_2.20.4-1_win32.zip
- gnome-common-2.11.0.zip
- gtk+_2.16.5-1_win32.zip
- gtk+-dev_2.16.5-1_win32.zip
- intltool_0.40.4-1_win32.zip
- intltool-dev_0.40.4-1_win32.zip
- libgnurx-2.5.zip
- libgnurx-dev-2.5.zip
- libiconv-1.9.1.bin.woe32.zip
- libpng_1.2.38-1_win32.zip
- libpng-dev_1.2.38-1_win32.zip
- libxml2_2.7.3-1_win32.zip
- libxml2-dev_2.7.3-1_win32.zip
- ORBit2-dev_2.14.16-1_win32.zip
- ORBit2_2.14.16-1_win32.zip
- pango_1.24.5-1_win32.zip
- pango-dev_1.24.5-1_win32.zip
- pkg-config-0.23-2.zip
- zlib-1.2.3.zip
- zlib-dev-1.2.3.zip
- Paquets externes installation dans le répertoire local de MSYS "/local" (C:\Programs\msys\1.0\local\ ou C:\MinGW\local\)
- svn-win32-1.6.5.zip
La question de Perl
Enfin vous avez besoin de Perl. La version Perl dans MSYS est la 5.6.1 qui est trop ancienne pour les scripts de configuration (configure) de nombreux logiciels dont Bluefish. J'utilise la version 5.6.1 de MSYS pour autoconf/automake/autogen.sh et une version externe comme ActiveState's pour tout ce qui nécessite une version plus récente. Installez la version ActivePerl de Perl. Puis éditez /etc/fstab dans l'environnement MSYS (usuellement ) et ajoutez la ligne suivante :
c:/programs/perl /opt/perl
ainsi Perl est monté dans l'environnement MSYS.
Configuration de votre environnement de compilation
Vous pouvez définir quelques variables d'environnement comme suit.
PATH="/bin:/local/bin:/opt/perl/bin" C_INCLUDE_PATH="/include:/local/include" LIBRARY_PATH="/lib:/local/lib"
- ou alternativement utiliser notre script config.site pour configurer MSYS et ajuster aisément PATH/CFLAGS/LDFLAGS.
De plus nous avons besoin d'ajuster le chemin de recherche macro pour aclocal :
echo /local/share/aclocal > /share/aclocal/dirlist
car un bug de l'éditeur de liens de gconftool-2 ajoute ce lien symbolique :
ln -s /local/bin/libxml2-2.dll /local/bin/libxml2.dll
Compiler les paquets externes
Pour compiler Bluefish nous avons besoin de certaines bibliothèques qui ne sont pas disponibles dans le projet MinGW/MSYS.
Installer les paquets pré-compilés
Shawn Novak propose des archives pré-compilées qu'il vous suffit d'extraire dans /local:
- Paquets spécifiques installation dans le répertoire local de MSYS "/local" (C:\Programs\msys\1.0\local\ ouC:\MinGW\local\)
- pcre-7.9-bin-MinGW-20090902.tbz2
- aspell-0.60.6-bin-MinGW-20090901.tbz2
- enchant-1.5.0-bin-MinGW-20090901.tbz2
Un ensemble complet de dictionnaires pour Aspell 0.60.6 est disponible ici : ftp://kernel86.muleslow.net/mingw/aspell/lang/
Compilation et installation depuis les sources
Si vous voulez construire votre propre version personnalisée de ces paquets, voici les paramètres de configuration utilisés. <ref>Note de Daniel Leidert: Je commence par appliquer le scriptmsys.site avec le contenu suivant pour configure:
#!/bin/sh PATH="/opt/perl/bin:$PATH" prefix=/local exec_prefix='${prefix}' enable_shared=yes enable_static=no enable_maintainer_mode=yes LDFLAGS="-L/local/lib -L/lib" CFLAGS="-g -Wall -O2 -I/local/include -I/include -mwindows" CPPFLAGS="-g -Wall -O2 -I/local/include -I/include"
Le script de configuration (configure) est alors appelé comme suit en même temps que les commutateurs comme indiqué ci-dessus:
./configure CONFIG_SITE=msys.site ...''configure options see above''...
</ref>
./configure --prefix=/local --disable-rpath --enable-win32-relocatable
./configure --prefix=/local --enable-aspell --disable-ispell --disable-myspell
- PCRE 7.9 (UTF-8 support is a must)
./configure --prefix=/local --enable-utf8 --enable-unicode-properties
Malheureusement gucharmap ne compile pas directement. les instructions suivantes proviennent de la liste de diffusion. Appliquer en premier lieu ce patch de Daniel Leidert gucharmap26.diff et configurez ensuite avec les commandes suivantes :
patch -p0 <gucharmap26.diff intltoolize -f libtoolize -f aclocal -I m4/ --force autoheader -f automake -f autoconf -f ./configure --disable-gconf --disable-schemas-install --disable-scrollkeeper
Compiler Bluefish
Récupération de la dernière version :
svn checkout https://bluefish.svn.sourceforge.net/svnroot/bluefish/trunk/bluefish
Lancer autogen.sh (uses perl 5.6.1). Puis lancer configure (soyez sûr que Perl de /opt/perl/bin est utilisé ; vérifier le PATH) et make :
./autogen.sh ./configure CONFIG_SITE=config.site/config.msys make make install
Debuguer Bluefish
Pour obtenir des informations de déboguage sur la console, configurer bluefish avec l'option '--enable-debugging-output' de ./configure. De plus les CFLAGS doivent contenir '-g' (par défaut, et également explicitement déclaré par config.msys).
Pour débuguer les crashes installer le Débugueur GNU (GDB).
Création de l'installeur
Pour compiler l'installeur vous aurez besoin de NSIS avec le plugin UnTGZ installé. Vous devez également avoir makensis.exe dans votre path (par exemple dans /opt/nsis).
Pour créer l'installeur, configurer et compiler Bluefish avec les commandes suivantes :
./configure CONFIG_SITE=win32/config.nsis cd win32 make -f Makefile.mingw installer
notes et références
<references/>