Compilation d'Open Sankoré 2.5.1 sous Ubuntu 14.04-3 LTS Trusty Tahr
1er février 2016 : le logiciel Open Sankoré semble au point mort depuis bientôt 2 ans, voici la méthode que j'utilise pour générer le package .deb d'Open Sankoré version 2.5.1 (la dernière sortie en 2014) sous Ubuntu 14.04-3 LTS (64 bits).
Récupérer Sankoré avec git
Si vous êtes derrière un proxy, définissez la variable http_proxy :
$ sudo export http_proxy=http://serveur:port/
Installer le paquet Ubuntu git
$ sudo apt-get install git
Installer le paquet Ubuntu build-essential
$ sudo apt-get install build-essential
Se positionner dans le répertoire src
$ cd /usr/local/src
Récupérer les sources d'Open Sankoré présents depuis le dépôt GIT (les deux premiers sont nécessaires, les autres facultatifs selon moi...)
$ sudo git clone https://github.com/Sankore/Sankore-3.1.git
$ sudo git clone https://github.com/Sankore/Sankore-ThirdParty.git
$ sudo git clone https://github.com/Sankore/Sankore-Plugins.git
$ sudo git clone https://github.com/Sankore/Sankore-API.git
$ sudo git clone https://github.com/Sankore/Sankore-AppToolkit.git
Cinq répertoires sont créés et peuplés, /usr/local/src/Sankore-3.1, /usr/local/src/Sankore-API, /usr/local/src/Sankore-AppToolkit, /usr/local/src/Sankore-Plugins et /usr/local/src/Sankore-ThirdParty
Récupérer la librairie Qt 4.8 (et non plus celle modifiée à l'époque, version 4.7.3), puis la mettre en place
$ sudo wget https://download.qt.io/archive/qt/4.8/4.8.0/qt-everywhere-opensource-src-4.8.0.tar.gz
$ sudo tar xzf qt-everywhere-opensource-src-4.8.0.tar.gz
$ sudo mv qt-everywhere-opensource-src-4.8.0 Qt-4.8
Un sixième répertoire est donc présent : /usr/local/src/Qt-4.8
Vérifier et modifier éventuellement les droits du script de génération du package
$ sudo chmod 755 /usr/local/src/Sankore-3.1/buildDebianPackage.sh
Installer les paquets Ubuntu nécessaires à la compilation
$ sudo apt-get install zlib1g-dev libjpeg8-dev libtiff4-dev libmng-dev libpng12-dev libdirectfb-dev libgstreamer-plugins-base0.10-dev libpulse-dev libaudio-dev libasound2-dev libfontconfig1-dev libts-dev libcups2-dev libgtk2.0-dev libxv-dev libssl-dev libphonon-dev libt1-dev x11proto-print-dev libmotif-dev libxp-dev libpaper-dev
Trois librairies doivent être compilées préalablement : FreeType, XPdf et Quazip
Compilation de la librairie FreeType
Aller dans le répertoire de la lib freetype
$ cd /usr/local/src/Sankore-ThirdParty/freetype
Construire le Makefile
$ sudo qmake freetype.pro -spec linux-g++
Lancer la compilation de la librairie freetype
$ sudo make
Le fichier /usr/local/src/Sankore-ThirdParty/freetype/lib/linux/libfreetype.a est créé
Compilation de la librairie XPdf
Se positionner dans le répertoire xpdf-3.03
$ cd /usr/local/src/Sankore-ThirdParty/xpdf/xpdf-3.03
Configurer la compilation
$ sudo ./configure --with-freetype2-library="../../freetype/lib/linux" --with-freetype2-includes="../../freetype/freetype-2.4.6/include"
Modifier fichier le xpdf/xpdf.pro au niveau des sources pour ajouter plusieurs fichiers T1
$ sudo vi /usr/local/src/Sankore-ThirdParty/xpdf/xpdf.pro
A la ligne 88, insérer
$$XPDF_DIR/splash/SplashT1Font.cc\
$$XPDF_DIR/splash/SplashT1FontEngine.cc\
$$XPDF_DIR/splash/SplashT1FontFile.cc\
Créer le Makefile
$ cd /usr/local/src/Sankore-ThirdParty/xpdf
$ sudo qmake xpdf.pro -spec linux-g++
Lancer la compilation
$ sudo make
Le fichier /usr/local/src/Sankore-ThirdParty/xpdf/lib/linux/libxpdf.a est créé
Compilation de la librairie Quazip
Se positionner dans le répertoire quazip
$ cd /usr/local/src/Sankore-ThirdParty/quazip
Créer le Makefile
$ sudo qmake quazip.pro -spec linux-g++
Lancer la compilation
$ sudo make
Le fichier /usr/local/src/Sankore-ThirdParty/quazip/lib/linux/libquazip.a est créé
Compilation d'Open Sankoré 2.5.1
Se placer dans le répertoire de Sankoré
$ cd /usr/local/src/Sankore-3.1
Lancer la génération du package
$ sudo ./buildDebianPackage.sh
Résultat de la compilation d'Open Sankoré 2.5.1
La compilation génère un package .deb (/usr/local/src/Sankore-3.1/install/linux/Open-Sankore_2.5.1_amd64.deb) prêt à être installé