Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
lazarus [Le 12/09/2009, 21:49] draco31.fr suppression tag développement |
lazarus [Le 26/09/2022, 09:49] (Version actuelle) flozz [Au secours ! Mon exécutable fait 18 Mio !] Corrections |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Gutsy programmation BROUILLON}} | + | {{tag>Focal Bionic Xenial IDE programmation}} |
---- | ---- | ||
Ligne 5: | Ligne 5: | ||
====== Lazarus ====== | ====== Lazarus ====== | ||
- | **Lazarus** est un IDE pour développer en pascal objet. Il est très semblable à [[http://www.borland.com/fr/|Borland]] [[wpfr>Delphi_(langage)|Delphi]] (7) ou à [[wpfr>Kylix_(informatique)|Kylix]] et est disponible sur de nombreux systèmes (GNU/Linux, Windows, Mac OS, etc.). | + | **Lazarus** est un IDE pour développer en Pascal Objet. Il est très semblable à [[wpfr>Delphi_(langage)|Delphi]] (7) ou à [[wpfr>Kylix_(informatique)|Kylix]] et est disponible sur de nombreux systèmes (GNU/Linux, Windows, Mac OS, etc.). Lazarus permet de compiler le même code source pour une multitude d'architectures, de systèmes d'exploitation et de widgetset (GTK, QT, win32/64, etc.), et peut effectuer une [[wpfr>Compilateur_crois%C3%A9#Compilation_crois.C3.A9e|compilation croisée]]. |
- | {{applications:lazarus:capture_lazarus_gtk_2.png}} | + | {{applications:lazarus:capture_lazarus_gtk_2.png?500}} |
- | ===== Pré-requis ===== | ||
- | * Disposer des [[:sudo|droits d'administration]] ; | ||
- | * Disposer d'une connexion à Internet configurée et activée ; | ||
===== Installation ===== | ===== Installation ===== | ||
- | Cette méthode d'installation à été testée sous Ubuntu 7.10 mais devrait marcher sur les autres versions. | + | [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>lazarus]]**. |
- | -> Testée sous Hardy 8.04! tout est ok (lazarus v0.9.26) | ||
- | -> Sous Jaunty 9.04, on peut installer directement avec synaptic... | + | ===== Configuration ===== |
- | Pour commencer il faut télécharger la clef du dépôt : | + | La police de caractères par défaut peut être changée pour plus de lisibilité dans le menu //Configuration -> Options...//, section //Affichage//, en définissant la fonte à //Courier 10 Pitch//. |
- | <code> | + | ===== Utilisation===== |
- | gpg --keyserver hkp://pgp.mit.edu:11371 --recv-keys 6A11800F | + | |
- | gpg --export 6A11800F | sudo apt-key add - | + | |
- | </code> | + | |
- | Ensuite, [[:tutoriel:comment_modifier_sources_maj|modifiez vos sources de mises à jour]] pour y ajouter le dépôt suivant : | + | Lancez l'application comme indiqué [[:tutoriel:comment_lancer_application|ici]] ou via le [[:terminal]] (toutes [[:versions]] ou [[:variantes]] d'Ubuntu) avec la [[:commande_shell|commande]] suivante : <code>lazarus-ide</code> |
- | <file>deb http://www.hu.freepascal.org/lazarus/ lazarus-testing universe</file> | + | |
- | Puis [[:tutoriel:comment_modifier_sources_maj#recharger_la_liste_des_paquets|rechargez la liste des paquets]]. | + | |
- | Pour finir, [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **lazarus**. | + | ==== Au secours ! Mon exécutable fait 18 Mio ! ==== |
- | <note tip> | + | Et oui, quand vous compilez votre programme (même une simple fenêtre vide), l'exécutable généré fait près de 18 Mio, ce qui est énorme ! La raison de cette taille est que les symboles de débogage sont inclus dans l’exécutable. Pour remédier à ce problème pour pouvez soit : |
- | Voir aussi le tuto de Chris sur Lazarus-Fr: [[http://lazarus-fr.net/tiki-index.php?page=Installe-Ubuntu]]</note> | + | |
- | En particulier, supprimer le dossier .lazarus de votre home avant mise à niveau vers une nouvelle version de Lazarus (de 0.9.24 vers 0.9.26 par exemple ;-)) | + | |
- | ===== Configuration : avoir Lazarus en GTK 2 ===== | + | Tout simplement supprimer les informations de débogages. ((Quand vous compilez votre « produit fini », l'exécutable que vous allez distribuer (ou pas), sinon cela enlève toute possibilité de débogage.)), effectuez les manipulations suivantes : |
- | {{ applications:lazarus:gtk_gtk2.png}} | + | * Rendez-vous dans //Projet → Options du compilateur//. |
+ | * Dans l'onglet « code », cochez les cases « Table des liens intelligente » et « Code le plus petit » (« Petit plutôt que rapide (-Os) » depuis Lazarus 0.9.26-2 et Free Pascal Compiler 2.2.0). | ||
+ | * Dans l'onglet « Édition des liens », cochez **uniquement** « Éliminer les symboles de l'exécutable (-Xs) » et « Lien intelligent (-XX) ». **Tout le reste doit être décoché !** | ||
+ | * Rendez-vous dans l'onglet « Message » (attention: Verbosity) puis décochez « Insérer un logo FPC (-l) ». | ||
+ | * Pour finir, cliquez sur le bouton « OK », puis compilez en allant dans //Exécuter → Construire tout//. | ||
+ | Voilà, vous êtes passé de 18 Mio à environ 2,3 Mio… | ||
- | La première fois que vous lancez Lazarus, vous remarquerez qu'il est très moche (lui et les applications qu'il compile). Pour résoudre ce problème, il faut le recompiler en GTK 2. | + | {{ applications:lazarus:capture_options_du_compilateur.png }} |
- | <note important>Attention avant de poursuivre, il faut donner les droits en écriture aux fichiers et dossiers sous /usr/lib/lazarus | + | |
- | sous peine d'avoir des messages d'erreur</note> | + | |
- | ==== Compilation ==== | + | Ou alors les placer dans fichier DBG externe ce qui permet de conserver les possibilités de débogages. Généralement dans les applications sous paquets Debian ceux ci sont inclus dans le paquet <packname>-dbg |
- | {{ applications:lazarus:capture_compilation_de_lazarus.png}} | + | * Rendez-vous dans //Projet → Options du compilateur//. |
+ | * Dans l'onglet « Débogage », cochez « Utiliser un fichier d'information de débogage externe pour "gdb" (-Xg) » et « Éliminer les symboles de l'exécutable (-Xs) ». | ||
+ | Avec cette méthode vous atteignez 5,5Mio | ||
- | Pour recompiler Lazarus en GTK 2, lancez-le puis rendez-vous dans //Outils → Configurer "Build Lazarus"// puis allez dans l'onglet « Options de construction avancées ». | + | Il est possible de réduire encore la taille de votre exécutable en le compressant avec [[:UPX]] (vous devriez alors atteindre environ 700 Kio). |
- | Ensuite cochez les cases suivantes (comme illustré sur la capture ci-contre) : | ||
- | <file> | ||
- | ( )(X)( ) LCL | ||
- | ( )(X)( ) SynEdit | ||
- | ( )(X)( ) Outils de code | ||
- | ( )(X)( ) Enregistrement d'un paquet | ||
- | ( )(X)( ) Interface IDE | ||
- | ( )(X)( ) Fiche JIT | ||
- | ( )(X)( ) IDE | ||
- | ( )(X)( ) Lanceur | ||
- | (X)( )( ) Exemples | ||
- | </file> | ||
- | Dans la section « Interface LCL », cochez « gtk 2 », puis cochez la case « Nettoyer tout » qui se trouve juste en-dessous. | ||
- | Cliquez sur le bouton « Enregistrer la configuration », puis pour lancer la compilation, allez dans //Outils → Construire Lazarus//. | + | ===== Désinstallation ===== |
+ | Pour supprimer cette application, il suffit de [[:tutoriel:comment_supprimer_un_paquet|supprimer son paquet]]. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés. | ||
- | ==== Erreurs pendant la compilation ==== | ||
- | Si pendant la compilation vous rencontrez une erreur du type : | + | ===== Voir aussi ===== |
- | <file> | + | ==== Lazarus ==== |
- | /usr/share/lazarus/components/printers/unix/udlgselectprinter.pp(137,24) Fatal: Can't find unit Libc used by uDlgSelectPrinter | + | |
- | </file> | + | |
- | effectuez la commande suivante : | + | * **(en)** [[http://www.lazarus.freepascal.org/|Le site officiel du projet Lazarus]] |
+ | * [[https://pascal.developpez.com/cours/freepascal/videos/|Série de 32 tutoriels vidéos en anglais sur Free Pascal et Lazarus]] | ||
+ | * [[http://www.lazarus-components.org/index.php?page=shop.product_details&category_id=2&product_id=25%3D0&vmcchk=1&option=com_virtuemart&Itemid=1|Livre «LAZARUS FREE PASCAL - Développement rapide»]] | ||
- | sudo cp -r "/usr/share/fpcsrc/packages/base/libc" "/usr/lib/fpc/2.2.0/units/i386-linux" | + | ==== Pascal ==== |
- | puis relancez la compilation. | + | *[[https://pascal.developpez.com/|Pascal - Club d'entraide des développeurs francophones]] |
- | + | * [[https://fr.wikiversity.org/wiki/Langage_Pascal|«Langage Pascal» sur le site de la Wikiversité]] | |
- | + | * [[https://fr.wikibooks.org/wiki/Programmation_Pascal|«Programmation Pascal» sur Wikilivres]] | |
- | **Attention : si vous ulilisez la version offerte par les dépôts Ubuntu (Synaptic): ** | + | * [[https://www.marcocantu.com/epascal/French/|L'essentiel du langage Pascal]] |
- | + | * **(en)** [[https://www.taoyue.com/tutorials/pascal/|Learn Pascal tutorial]] - Tutoriel sur le Pascal. | |
- | Si pendant la compilation vous rencontrez une erreur du type : | + | |
- | <file> Write error: Unable to create file "/home/...../.lazarus/staticpackage.inc | + | |
- | </file> | + | |
- | c'est que vous n'avez pas les droits administrateur. | + | |
- | + | ||
- | relancez lazarus avec les droits root : dans une console tapez : | + | |
- | <code> | + | |
- | sudo startlazarus | + | |
- | </code> | + | |
- | la reconstruction de lazarus devrait alors fonctionner | + | |
- | + | ||
- | Si pendant la compilation vous rencontrez une erreur du type : | + | |
- | <file> make[2]: *** [../../units/i386-linux/gtk2] Error 1 | + | |
- | </file> | + | |
- | c'est que vous n'avez pas les droits d'écriture dans le dossier /usr/lib/lazarus. | + | |
- | + | ||
- | ==== En cas de problème ==== | + | |
- | + | ||
- | Si après la compilation l'IDE refuse de se lancer, tapez les commandes suivantes dans votre terminal : | + | |
- | + | ||
- | cd /usr/share/lazarus | + | |
- | make clean all | + | |
- | + | ||
- | + | ||
- | ===== Au secours ! Mon exécutable fait 18 Mio ! ===== | + | |
- | + | ||
- | Et oui, quand vous compilez votre programme (même une simple fenêtre vide), l'exécutable généré pèse près de 18 Mio, ce qui est énorme ! | + | |
- | + | ||
- | Pour remédier à ce problème, quand vous faites la compilation finale((Quand vous compilez votre « produit fini », l'exécutable que vous allez distribuer (ou pas), sinon cela enlève toute possibilité de débugage.)) faites les manipulations suivantes : | + | |
- | + | ||
- | * Rendez-vous dans //Projet → Options du compilateur//. | + | |
- | * Dans l'onglet « code » cochez les cases « Table des liens intelligente » et « Code le plus petit » (« Petit plutôt que rapide (-Os) » depuis version 0.9.26-2 et Free Pascal Compiler 2.2.0). | + | |
- | * Dans l'onglet « Édition des liens » cochez **uniquement** « Éliminer les symboles de l'exécutable (-Xs) » et « Lien intelligent (-XX) ». **Tout le reste doit être décoché !** | + | |
- | * Rendez-vous dans l'onglet « Message » puis décochez « Insérer un logo FPC (-l) ». | + | |
- | * Pour finir, cliquez sur le bouton « OK », puis compilez en allant dans //Exécuter → Construire tout//. | + | |
- | + | ||
- | Voilà, vous êtes passé de 18 Mio à environ 2,3 Mio… | + | |
- | + | ||
- | Il est possible de réduire encore la taille de votre exécutable en le compressant avec [[:UPX]] (vous devriez alors atteindre environ 700 Kio). | + | |
- | + | ||
- | {{ applications:lazarus:capture_options_du_compilateur.png }} | + | |
- | ===== Liens ===== | + | ==== Autres ==== |
- | * [[http://www.lazarus.freepascal.org/|Le site officiel du projet Lazarus]]<sub>[en]</sub> | + | * [[fpc]] - Compilateur Free Pascal, utilisé par Lazarus. |
- | * [[http://lazarus-fr.espace-malin.fr/|Le site de la communauté française de Lazarus]] | + | |
- | * [[http://www.developpez.net/forums/forumdisplay.php?f=189/|Le forum de la communauté française de Lazarus]] | + | |
---- | ---- | ||
//Contributeurs : [[utilisateurs:FLOZz]], [[utilisateurs:Ner0lph]].// | //Contributeurs : [[utilisateurs:FLOZz]], [[utilisateurs:Ner0lph]].// |