====================
== Le blog de dup ==
====================

Erreurs qui font mal ...

devel

Voilà, j'ai encore fait une bourde toute bête mais ça m'a pris un certain temps avant de trouver ce qui n'allait pas.

En ce moment, j'écris du code (C et GTK+). Comme je sais que je ne vais pas écrire qu'un seul programme, je me suis dit que j'allais faire une bibliothèque. Comme j'écris pour plusieurs systèmes, je me suis contraint a programmer dans le système le plus restrictif. Donc je programme sous windows (Xemacs, mingw, msys et donc GTK+, GLIB, OpenSSL et postgresql). Mais, Mingw est si bien que l'on peut oublier que l'on est sous windows (c'est un vrai bash, avec rxvt en terminal). Toutefois ce qui m'est arrivé me l'a bien fait sentir.

Donc, mon programme utilisant ma bibliothèque (merci les autotools) marche très bien. Puis, je ne sais pour quelle raison, en lieu et place de le lancer dans le shell avec ./monprog j'ai cliqué dessus, à la windows. Et là, il a crashé !! mais bien. J'ai cru que j'avais un problème de liaison avec la bibliothèque (après avoir essayé toutes les options de libtool j'en suis arrivé à essayer Cmake ... bon je n'aurais pas dû, ça m'a un peu dégoutté et ça n'a rien résolu !). Finalement on m'a laisser entendre que ce pourrait être un problème de PATH. Après avoir modifié tous les PATH de windows, et dans tous les sens je me suis résolu au fait que ce n'était pas ça.

L'idée des PATH ayant fait son chemin, je me suis souvenu que j'avais écris un bout de code pour aller chercher des fichiers de configuration dans des localisations par défaut. J'avais bien entendu écrit les chemins en dur ! (/usr ...) Alors bien entendu sous bash ça va, il y a une émulation de l'arborescence POSIX mais directement sous windows .... non !

En même temps j'en ai profité pour corriger mes appels à getenv("LOGNAME") et getcwd() par les appels portables de la glib soit g_get_home_dir et g_get_current_dir.

Vous ne devinerez jamais : ... si si, maintenant, ça marche :)