Note à l'intention des visiteurs qui arrivent depuis Google : grâce aux stats du blog, je constate que la page la plus visitée depuis Google est celle-ci. Il semble que beaucoup de monde ait du mal avec les accents, Windows et Doxygen. Pour moi, ça marche bien, merci. Si votre problème ne trouve pas de solution, vous pouvez utiliser les commentaires en bas de page. C'est le seul moyen dont je dispose pour améliorer ce billet.


doxygen sous Windows ? Mais ça marche bien sous Linux!

Installer doxygen sous Windows est intéressant pour deux raisons:

  1. Pour du multiplateforme, ça évite de changer de machine pour générer la doc.
  2. Sous Windows, on peut générer facilement un .chm, plus facile à consulter que la doc en html.


Installation

Installer en administrateur (pas avec un shell ouvert en admin avec un runas).

Deux paquets à installer:

  • graphviz (pour générer les diagrammes)
  • doxygen proprement dit

Des binaires sont disponibles pour Windows, ils fonctionnent très bien.

Pour tester, lancer Doxywizard , très pratique pour une vue d'ensemble des paramètres.


Utilisation

Rien de particulier à signaler pour l'utilisation.

J'ai rencontré quelques soucis d'accents avec des sources encodées en iso-8859-15.

Dans ce cas, utiliser le paramètre:

INPUT_ENCODING = ISO-8859-15

A adapter bien sûr à votre jeu de caractère.

En sortie, doxygen encode par défaut en utf-8.

La documentation complète de doxygen est disponible dans le répertoire d'installation, et la mailing-liste archivée sur sourceforge.


Génération d'un chm

Egalement d'une grande simplicité. J'utilise pour l'encodage HTML Workshop , disponible gratuitement chez Microsoft.

  • Problème éventuel: les accents sont corrects dans le texte, mais pas dans les titres de la barre de sélection de l'explorateur chm.
  • Solution: convertir les fichiers de projet chm générés par doxygen, avec recode ou iconv avant d'utiliser HTML Help Workshop.

Ca se fait facilement avec un shell (vous avez tous installé Msys n'est-ce pas ?)

for i in index.hh*; do iconv -f UTF-8 -t ISO-8859-15 "$i" > "$i".tmp; mv "$i".tmp "$i" ;done

Sous Windows, iconv est présent dans /c/GTK/bin/iconv (installé par le package GTK donc)

En cas de doute, iconv -l = donne la liste des conversions supportées.

Si quelqu'un sait générer des chm depuis Linux, je suis preneur.