Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | Prochaine révision Les deux révisions suivantes | ||
zimwriterfs [Le 20/03/2016, 20:58] YoBoY liens |
zimwriterfs [Le 09/02/2017, 16:27] 159.203.33.113 |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Precise Trusty logiciels archivage html}} | + | {{tag>Xenial Trusty logiciels archivage html}} |
---- | ---- | ||
====== zimwriterfs ====== | ====== zimwriterfs ====== | ||
- | + | <note important>Un bug empêche la création de zim assez gros sous Ubuntu 16.04. Pour suivre son évolution et son éventuel résolution, voir [[https://github.com/wikimedia/openzim/issues/5|ici]].</note> | |
- | L'application **[[https://git.wikimedia.org/tree/openzim.git/HEAD/zimwriterfs|zimwriterfs]]** est un outil en ligne de commande destiné à produire une archive au format ouvert [[http://www.openzim.org|ZIM]]) à partir d'un répertoire local contenant un site web fonctionnant hors-ligne (avec images, code Javascript et feuilles de style CSS). | + | L'application **[[hthttp://www.google.com/tp://www.openzim.org/wiki/Build_your_ZIM_file|zimwriterfs]]** est un outil en ligne de commande destiné à produire une archive au format ouvert [[http://www.openzim.org|ZIM]]) à partir d'un répertoire local contenant un site web fonctionnant hors-ligne (avec images, code Javascript et feuilles de style CSS). |
- | Le fichier généré peut être lu à l'aide d'un [[http://openzim.org/wiki/ZIM_Readers|lecteur ZIM]] tel que par exemple [[http://www.kiwix.org|Kiwix]]. | + | Le fichier généré peut être lu à l'aide d'un [[http://openzim.org/wiki/ZIM_Readers|lecteur ZIM]] tel que par exemple [[:Kiwix]]. |
zimwriterfs est un outil autonome développé par la fondation [[http://www.openzim.org|opemzim]]. Auparavant, il faisait partie des [[http://sourceforge.net/p/kiwix/other/ci/master/tree/|autres outils]] mis à disposition par l'auteur de Kiwix. | zimwriterfs est un outil autonome développé par la fondation [[http://www.openzim.org|opemzim]]. Auparavant, il faisait partie des [[http://sourceforge.net/p/kiwix/other/ci/master/tree/|autres outils]] mis à disposition par l'auteur de Kiwix. | ||
Ligne 21: | Ligne 21: | ||
* Avoir [[:tutoriel:comment_installer_un_paquet|installé le paquet]] **[[apt>libmagic1|libmagic1 - librairie de recherche des types MIME des fichiers]]** et celui de développement **[[apt>libmagic-dev]]** ([[http://www.darwinsys.com/file/]]) | * Avoir [[:tutoriel:comment_installer_un_paquet|installé le paquet]] **[[apt>libmagic1|libmagic1 - librairie de recherche des types MIME des fichiers]]** et celui de développement **[[apt>libmagic-dev]]** ([[http://www.darwinsys.com/file/]]) | ||
* **[[apt>gcc|gcc - le compilateur C]]** ou tout autre compilateur C; | * **[[apt>gcc|gcc - le compilateur C]]** ou tout autre compilateur C; | ||
- | * **[[apt>g++|g++ - le compilateur C++]]** ou tout autre compilateur C++ | + | * **[[apt>zlib1g-dev,libtool,pkg-config,g++,liblzma-dev,libmagic-dev,zlib1g-dev,libgumbo-dev,icu-devtools,libicu-dev|g++ - le compilateur C++, libtool pkg-config liblzma-dev libmagic-dev zlib1g-dev libgumbo-dev icu-devtools libicu-dev]]** |
- | * **[[apt>pkg-config]]** | + | |
- | * **[[apt>zlib1g-dev]]** | + | |
- | * **[[apt>libtool]]** | + | |
* **[[apt>checkinstall]]** (optionnel). Ce paquet permet de créer un paquet deb, valide uniquement sur le pc, permettant une désinstallation du logiciel directement par le gestionnaire de paquet. Voir [[:compilation|Compilation sous Ubuntu]] | * **[[apt>checkinstall]]** (optionnel). Ce paquet permet de créer un paquet deb, valide uniquement sur le pc, permettant une désinstallation du logiciel directement par le gestionnaire de paquet. Voir [[:compilation|Compilation sous Ubuntu]] | ||
+ | * Avoir [[:tutoriel:comment_installer_un_paquet|installé le paquet]] **[[apt>libzim0|library implementation of ZIM specifications]]** (à partir d'[[xenial|Ubuntu 16.04]] c'est le paquet **[[apt>libzim0v5]]**), et celui de développement **[[apt>libzim-dev]]**. | ||
+ | Il est également nécessaire d'installer la dernière version de xapian, pour cela : | ||
+ | * [[:PPA|Ajouter le PPA]] **ppa:xapian-backports/ppa**((https://launchpad.net/~xapian-backports/+archive/ubuntu/ppa)) dans vos sources de logiciels; | ||
+ | * [[:tutoriel:comment_modifier_sources_maj#recharger_la_liste_des_paquets|recharger la liste des paquets]]; | ||
+ | * [[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>xapian-tools,libxapian-dev]]**. | ||
- | <note important>Le fichier README spécifie ces dépendances mais ne précise pas qu'il faut aussi installer les paquets de développement. | ||
- | Si vous ne le faites pas, vous risquez d'observer les messages d'erreur de la sorte lors de la compilation : | ||
- | <code>zimwriterfs.cpp:21:19: erreur fatale: magic.h : Aucun fichier ou dossier de ce type</code> | ||
- | ou <code> > configure: error: lzma header files not found</code> | ||
- | </note> | ||
- | ==== Pré-requis sur Ubuntu 12.04 ==== | ||
- | * Avoir [[:tutoriel:comment_installer_un_paquet|installé le paquet]] **[[apt>libtool|script de prise en charge de bibliothèque générique]]** | ||
- | |||
- | Le package //libzim// n'est pas disponible dans les dépôts. Il faut | ||
- | - récupérer les sources sur [[http://openzim.org/download]] (testé avec la version la plus récente du moment : zimlib-1.2.tar.gz 08-Jun-2014). | ||
- | - les compiler et les installer avec la [[:tutoriel/compilation|séquence de commandes suivantes]] | ||
- | <code>./configure ; make; make install</code> | ||
- | |||
- | <note important> | ||
- | Si une fois zimwriterfs installée, vous obtenez le message suivant à l'exécution | ||
- | [[http://sourceforge.net/p/kiwix/discussion/604122/thread/bc4b6d0f|zimwriterfs: error while loading shared libraries: libzim.so.0: cannot open shared object file: No such file or directory]] alors une solution possible est de copier les fichiers // /usr/local/lib/libzim*// dans // /usr/lib// | ||
- | <code>cp /usr/local/lib/libzim* /usr/lib</code> | ||
- | </note> | ||
- | ==== Pré-requis sur Ubuntu 14.04 ==== | ||
- | |||
- | * Avoir [[:tutoriel:comment_installer_un_paquet|installé le paquet]] **[[apt>libzim0|library implementation of ZIM specifications]]** et celui de développement **[[apt>libzim-dev]]** ([[http://openzim.org/download]]) | ||
- | |||
- | <note important>Ne pas oublier le paquet développement sans quoi vous observerez le message d'erreur suivant à la compilation | ||
- | <code>zimwriterfs.cpp:23:35: fatal error: zim/writer/zimcreator.h: Aucun fichier ou dossier de ce type | ||
- | #include <zim/writer/zimcreator.h></code> | ||
- | </note> | ||
===== Installation ===== | ===== Installation ===== | ||
- | Pour récupérer une version du code source, il faut télécharger l'archive directement sur //[[https://git.wikimedia.org/tree/openzim.git/HEAD/zimwriterfs|zimwriterfs]]//. Il est possible de choisir le type d'archive. Puis, il faut le décompresser et se rendre dans **zimwriterfs**. | + | Pour récupérer une version du code source, il faut télécharger l'archive directement sur //[[https://github.com/wikimedia/openzim/archive/master.zip|github]]//. Puis, il faut la [[:archivage|décompresser]] et se rendre dans le dossier **openzim-master**. |
+ | Une fois dans le dossier, ouvrez-y un [[:terminal]] et exécutez les commandes suivantes : | ||
+ | <code>cd ../zimlib && ./autogen.sh && ./configure && make && cd ../zimwriterfs</code> | ||
Lancer la génération du Makefile: | Lancer la génération du Makefile: | ||
- | ./autogen.sh | + | <code>./autogen.sh</code> |
- | Puis la configuration de zimwriterfs: | + | Puis la configuration de zimwriterfs : |
- | ./configure | + | <code>./configure CXXFLAGS=-I../zimlib/include LDFLAGS=-L../zimlib/src/.libs</code> |
- | Puis la compilation: | + | Puis la compilation : <code>make</code> |
- | make | + | Et enfin l'installation : <code>sudo make checkinstall</code> |
- | Et enfin l'installation: | + | Ou bien (déconseillé) : <code>sudo make install</code> |
- | sudo make checkinstall | + | |
- | Ou bien (déconseillé): | + | |
- | sudo make install | + | |
<note help>Si la compilation échoue, vérifiez bien que toutes les dépendances sont installées (la sortie du **./autogen.sh** est assez explicite sur les dépendances) et que le **make** n'a pas été lancé en tant que super-utilisateur ( Erreurs de DMO et de FLAGS non déclarés).</note> | <note help>Si la compilation échoue, vérifiez bien que toutes les dépendances sont installées (la sortie du **./autogen.sh** est assez explicite sur les dépendances) et que le **make** n'a pas été lancé en tant que super-utilisateur ( Erreurs de DMO et de FLAGS non déclarés).</note> |