Tux & moi !

A plusieurs reprises, je fus tenté d'essayer Linux. Jusqu'à l'été dernier, mes conclusions étaient sans appel : Tux et moi, nous n'étions pas encore prêts pour vivre ensemble une aventure. Mes essais aboutissaient à une incompatibilité d'humeur évidente.

A sa décharge, je refusais de m'investir dans la langue de Shakespeare. A la mienne, je n'étais pas un pur produit de chez Billou : ses outils pour "programmer sans programmer", je les regardais avec condescendance comme je regarde un buveur qui ajoute de l'eau dans son vin.

Déclic cet été lorsque me vinrent dans les mains 3 galettes du magicien estampillées 8.1. Quel progrès ! Je me jetais alors sur la 8.2 et notre histoire, Tux & moi, pouvait enfin démarrer...Installation par défaut, je ne m'attardais pas. Tout, tout de suite !

Pascaliste des débuts, puis plus tard, lecteur assidu des ouvrages de l'institut Pascal, c'est naturellement que je m'intéressais aux compilateurs Pascal et je découvris Kylix. Son éditeur est LA référence historique en la matière, je pouvais cesser mes recherches...

Bien sûr, je me heurtais à une installation ardue dans un monde étranger ! je ne connaissais pas encore le langage pingouin. C'est donc mécaniquement et par défaut que toutes les options furent choisies... comme j'avais fait pour Linux !

Et l'installation se fit. J'ai dû prendre le temps de m'attarder sur les histoires de droits d'accès. Pour le "tar.gz" on percerait le mystère plus tard, il me suffisait de savoir taper la ligne exactement comme le préconise l'éditeur.

Après quelques difficultés pour l'enregistrement en ligne, je finis par voir et avoir l'interface de Kylix.

Victoire…

A l'assaut de Kylix !

L'interface est familière. Tux et moi allions pouvoir faire naître notre première création. Un sage aurait sûrement cherché à créer l'apparition de la sempiternelle phrase "hello, world" mais, je ne le suis pas. Tout, tout de suite !

J'entreprenais de porter WebTarot, un jeu de tarot en ligne au succès grandissant. Que de déconvenues... Fichiers introuvables, unités disparues... Cette extension, il faut la mettre en majuscule, ce nom en minuscule, et tout se retrouve, petit à petit et à tâtons... Ah, zut ces composants Delphi non officiels ne sont pas reconnus par Kylix... Me voilà K.O. Abandon...

15 jours plus tard, le courage revient et la curiosité me chatouille toujours. Je révise mes ambitions et choisis un logiciel plus simple : BzScore. Il n'utilise que des composants fournis avec Delphi. "Fichier non trouvé". Haha ! Mais cette fois, je ne cherche plus : toujours cette histoire de majuscules et minuscules : pas plus de 20 minutes sur un explorateur que je commence à... Konquerir !

Première compilation... Objet non trouvé ! Et paf ! Voilà ce que c'est que d'utiliser le composant "barre de progression exemple" au lieu de celle de la barre classique Delphi. 4 ou 5 lignes de code à modifier mais une bonne demi-heure pour comprendre le problème...

Seconde compilation : la procédure shellexecute est inconnue...Cette fonction très pratique qui lance d'autres applications n'existe donc pas sous Linux ? Qu'à cela ne tienne, je l'ôte : c'est le lancement du client de messagerie et du navigateur internet... on verra plus tard : Tout, tout de suite !

Nouvelle compilation... Rien ne se passe. Pas de message d'erreur. J'ose donc exécuter et c'est parti ! Voici ma fenêtre BzScore familière qui fait la fière dans son environnement KDE. Enfin, c'est pas top quand même : les composants n'ont pas la même dimension et ils se noient dans des fenêtres bien trop grandes. La touche F1 ne lance pas le fichier d'aide et me renvoit une erreur mais tout le reste est entièrement fonctionnel. Même les fenêtres surgissantes surgissent quand il faut et là où il faut.

Champagne !

Il reste néanmoins quelques adaptations à écrire mais qui semblent si futiles par rapport à tout ce qui a déjà été fait... Là, il n'est plus question d'abandonner ! Je commence à redimensionner les objets dans leurs fenêtres, ce qui me permet de découvrir une option inexistante sous Delphi... qui me redonne les dimensions harmonieuses que j'avais choisies à l'origine !

Pour les derniers points, je décide de faire appel à la communauté... Je ne trouve qu'un seul forum francophone dédié à Kylix et peu actif... Je le lis entièrement et trouve une solution à l'absence de Shellexecute. Reste néanmoins, mon problème de fichier d'aide inutilisable. Je décide donc d'écrire dans le forum et pose mon clavier. Déception : ma question n'était pas dans les FAQ, ni dans le forum et pourtant personne ne me répond... Ou elle est la communauté ?

Pas grave, je décide de réécrire l'aide en HTML. Oui mais cela ne suffit pas à le faire apparaitre par un appui sur la touche F1... Il n'y a pas de reconnaissance automatique des extensions et donc pas d'explorateur à lancer. Je retourne sur le forum où une question concernait la collecte de variables d'environnement. Je trouve celle qui me donne un explorateur HTML et me voilà avec une aide F1 fonctionnelle. De la même manière je remets le lien automatique vers mon site et abandonne le lien vers un envoi de mail.

Voilà, c'est fini. Il est temps cher Tux que notre premier bébé quitte son environnement de développement et vole en autonomie. Un clic dans l'explorateur de fichiers et... Rien ne se passe. Mais pourquoi ? J'essaye dans la console et je découvre que le fichier est introuvable. Un petit DIR (oups, LS) pour m'assurer qu'il est bien là et je relance. Même réponse. Au bout d'une heure, un linuxien un peu moins débutant me dit que je dois précéder le nom de mon programme par ./ pour signifier qu'il est dans le répertoire courant. Quoi ? J'aurais perdu une heure pour un truc aussi bête ? Grrrrrr. Je m'énerve, là. Tout, tout de suite ! Enfin, j'aimerais bien...

Nouveau lancement affublé de son épythète et nouveau message d'erreur : "Erreur de segmentation". C'est quoi ce truc, je n'utilise pas de segment. Retour sur le forum, la question existe déjà et la réponse renvoit à un excellent article d'Eric Sibert. Ni une, ni deux, je clique et découvre le monde des dépendances de librairies. Ah, oui, ça ressemble aux DLL mais c'est quoi ces "ln" suivis de noms compliqués avec des extensions du style machin.so.6.4.23 ? Ha finalement, plutôt pas mal pour éviter les incompatibilités de versions, on crée un lien du nom générique vers la version particulière que l'on utilise.

Finalement, j'arrive à faire tourner mon logiciel. Passons donc à quelque chose de vraiment sérieux. BzTarot, un jeu de tarot (pas en ligne) freeware que l'on trouve assez facilement dans l'autre monde. Particularité :un aspect graphique assez poussé et l'emploi de bitmaps inclus. Je récupère les sources Delphi, écarte quelques fonctionnalités périphériques trop liées à Windows (changement des couleurs systèmes), modifie le tnotebook qui perd ses onglets et puis bien sûr, les problèmes de majuscule, de dépendance de librairies... Deux heures plus tard, ça y est déjà. La préversion tourne.

Migration terminée !

Il est temps de montrer à la communauté notre résultat mon cher Tux. Une place sur mon site web, un tar.gz (là, il a bien fallu que j'apprenne à le maîtriser), et puis quelques référencements sur les sites de téléchargement habituels. Et rien... Quelques téléchargements par semaine contre quelques centaines pour la version windows et aucun retour...

Je cherche donc à référencer sur des sites spécialisés pour tuxmaniaques. Pas mieux... jusqu'au jour où je découvre le commentaire d'un webmestre sur le référencement : "ne marche pas"... Voilà qui explique le peu de téléchargement, un référencement pareil, ça ne donne pas envie d'essayer !

D'accord webmestre, ce n'est pas betatesteur mais je m'attendais à avoir ne serait-ce qu'un message pour me prévenir qu'il ne tourne pas. Vexé, j'écris au webmestre qui me répond et me donne les raisons du plantage. Entre-temps, hasard, un autre utilisateur me signale la même difficulté sur un linux bien coiffé. Enfin ! J'en tiens un ! Un betatesteur. Je lui propose une ou deux vérifications et il me répond que ça marche enfin. Il n'y a plus qu'à adapter cette nouvelle expérience pour parfaire ma diffusion... En avant, Tux !

Mais au fait, mine de rien me voilà en terrain (à peu près) connu… pas si compliqué de passer à Linux !

Non, je ne mettrais pas de conclusion à notre histoire ! Tu va devoir me supporter quelques temps, cher Tux. Je ne serais pas un amant fidèle mais j'y ai mis le nez... Développeurs Delphi, migrez vos applications vers Linux ! Les récentes comme les plus anciennes, ambitieuses ou simples gadgets.

Envahissons TuxLand !

Delphi, Kylix sont des marques déposées de BORLAND