[ncurses] Gestion de ncursesw

Mise à jour / Création /debug de paquetages
farvardin
Maître du Kyudo
Messages : 1084
Inscription : sam. 29 mars 2008, 22:56

[ncurses] Gestion de ncursesw

Message par farvardin »

bonjour,

je travaille à la françisation d'un système de création de jeu textuel (http://code.google.com/p/jacl/), et pour pouvoir jouer en console avec des accents, l'auteur a gentiment adapté son code pour supporter l'unicode, c'est à dire qu'il est passé de ncurses à ncursesw.

Seulement, contrairement au reste du monde (des distributions linux) qui inclue ncursesw depuis le dossier #include <ncursesw/ncurses.h>, archlinux considère que ncurses normal c'est trop caca, alors ils ne mettent que la version ncursesw, si bien que l'on a toujours des problèmes de compilation lorsqu'on essaye de compiler des programmes utilisant cette inclusion de ncursesw/ncurses.h

J'en avait parlé ici : http://bugs.archlinux.org/task/13994

et la réponse c'est que c'est aux programmes de s'adapter.

C'est pas comme si j'étais le seul à avoir rencontré ce désagrément : http://bugs.archlinux.org/task/17590

Le problème c'est que le programme JACL n'utilise pas de configure, et je ne vois pas comment modifier son code pour que son include fonctionne à la fois sur Archlinux et sur le Debian du créateur de JACL.

En tout cas, avec des modifications dans le paquet ncurses et des commentaires du style "Fool packages looking to link to non-wide-character ncurses libraries", ce n'est pas comme si les développeurs d'Archlinux n'étaient pas au courant du problème :
http://repos.archlinux.org/wsvn/package ... 6/PKGBUILD

En ce cas, pourquoi prendre en compte les bibliothèques partagées (libncurses++.a) et faire des adaptations en conséquence, et pas le faire pour ncurses.h ? Un petit lien symbolique et c'était réglé.

Pour un PKGBUILD j'avais fait un sed pour corriger cela (http://aur.archlinux.org/packages/fizmo/fizmo/PKGBUILD), mais pour travailler direct sur les sources du svn, je ne vois pas comment faire.

Il y a moyen en C de dire au préprocesseur "essaye d'inclure ça, si tu ne le trouves pas, essaye ici" ?

(en attendant je fais un ln -s /usr/include/ncurses.h /usr/include/ncursesw/ mais cela ne résoud pas le problème pour les autres personnes qui voudraient compiler ce paquet et qui devront faire cela également)
ln -s /usr/include/ncurses.h
Répondre