Petit compte rendu de l'installation et de l'utilisation de Kylix 2 pour
Linux.
L'installation a été réalisée à partir
de Kylix 2 Open Edtion disponible dans le magazine Planète Linux
de mars 2002 sur une distribution Manrake 8.2.
Installation et démarrage de Kylix
Aucun problème.
J'ai installé en tant qu'utilisateur dans le dossier /home/ostenne/kylix2
(important pour la suite).
J'ai enfin pu récupérer convenablement l'installation et
l'enregistrement en ligne s'est déroulé convenablement !
Compilation d'un projet.
J'ai récupéré un projet Delphi 3 (nommé Project1
pour les tests)
- il a fallu renommer/supprimer certaines classes standards (Kylix
rajoute un Q aux unités : Forms -> QForms ...)
- ajouter quelques lignes de codes car Linux nécessite parfois
des adaptations au comportement des objets (flux mémoire ...)
- modifier la propriété Scale des fiches pour la mettre
à False
- changer la police des Fontes
Ainsi j'obtiens quasiment les mêmes interfaces que sous Delphi/Windows
Exécution autonome.
Là les ennuis commencent :
dans Konqueror, je clique sur le fichier binaire produit par mon programme
: Project1
et rien ne se passe !
Je passe en console (terminal) dans le dossir de Project1 et tape : ./Project1
il m'est signalé qu'il manque une libraire partagée libqtintf-6.5-qt2.3.so
Je garde mon calme et cherche dans l'aide Kylix.
C'est prévu ! (mot clé déploiement, voire
ci-après)
J'essaye en mode console : en vain.
J'essaye un script shell (sh ou bash insipé du startKylix) : rien
à faire.
Je fonce sur www.developpez.com : une astuce de Eric SIBERT recoupe ce
que j'avais compris :
il faut déclarer une variable d'environnement LD_LIBRARY_PATH qui
pointe sur le dossier de Kylix2 contenant les librairies partagées
(à redéployer le cas échéant).
Mais encore faut-il le faire convenablement. Notamment Eric parle de libqt-6.2-qt2.3.so
qui n'existe pas !
Il faut travailler avec libqtintf-6.5.0-qt2.3.so !
Finalement ça marche en mode console : (je suis toujours dans
le dossier de Project1)
> export LD_LIBRARY_PATH=$HOME/kylix2/bin/:$LD_LIBRARY_PATH
> ./Project1
Mais c'est pénible en mode console.
Donc je réécris mon script sh (ou bash) nommé startProject1
(sans extension):
> #!/bin/sh
> export LD_LIBRARY_PATH=$HOME/kylix2/bin/:$LD_LIBRARY_PATH
> ./Project1
je le lance en mode console :
>sh startProject1
et tout se passe bien. Mais la console reste visible.
Je repasse alors sous Konqueror et clic sur startProject1: RIEN
Je découvre au bout d'un certain temps (non négligeable)
que j'ai "oublié" (fallait le savoir ...) d'activer l'option
EXECUTION dans les permissions sous Konqueror :
clic droit sur startProject1.sh , puis Propriétés, Onglet
Permissions : la colonne Exécution n'est pas cochée : le
faire !
Et là tout fonctionne à merveille ! C'est fou non ?
Distribution
Rigolo : il faut (vaut mieux) faire un fichier gzip / tar pour compressé
un peut le lourds paquet :
aux quelques ko du binaire du projet, il faut ajouter les librairies qt*.so
de Kylix nécessaires au bon fonctionnement de la bestiole !
Résultat : 9 Mo pour un malheureux loigicel autonome ... soit
4 Mo compressé !
Il y aura intérêt à partager les librairies qt*.so
!
A part cela, ça marche bien ... si on ne s'emmêle pas les
pinceaux avec le logiciel de (dé)compression TAR et ces options
! Vive les scripts !
Retour
|