[RESOLU]Que faut-il pour compiler ?
[RESOLU]Que faut-il pour compiler ?
Bonjour,
Je ne m'étais jamais posé la question en sujet avant de rencontrer un toutou car les rares fois où j'ai eu à le faire et bien tout était apparemment présent.
Mais ce n'est manifestement pas le cas avec un toutou, en tout cas avec raring... d'où ma question.
Si un spécialiste de la chose veut bien prendre le temps de faire un vademecum pour les apprentis, un pas à pas, ça rendrai service à quelques uns dont moi.
Merci,
Philippe
Je ne m'étais jamais posé la question en sujet avant de rencontrer un toutou car les rares fois où j'ai eu à le faire et bien tout était apparemment présent.
Mais ce n'est manifestement pas le cas avec un toutou, en tout cas avec raring... d'où ma question.
Si un spécialiste de la chose veut bien prendre le temps de faire un vademecum pour les apprentis, un pas à pas, ça rendrai service à quelques uns dont moi.
Merci,
Philippe
Last edited by augras on Thu 29 Jan 2015, 16:49, edited 1 time in total.
Salut, augras.
R. :
A) De l'intelligence. (Ç'a pas l'air d'être un problème !)
B) Le fichier devx correspondant à ton Puppy ou Toutou. Celui du uPupRaring 3.9.9.2
est à :http://www.smokey01.com/pemasu/UpupRari ... aring3992/
C) Lire attentivement le fichier INSTALL du logiciel que tu veux compiler.
En gros, les étapes sont
0) Déballer la source (tar.bz2 ou similaire) et entrer dans le dossier ainsi créé.
1) Taper
./configure --help (pour passer en revue les paramètres généraux) et
./configure --help=short (pour étudier les paramètres propres au programme que
tu veux compiler)
En général
./configure --prefix=/usr
est suffisant. Autrement, le programme se placera par défaut dans /usr/local/bin, ce
qu'on essaye d'éviter dans Puppy.
Si c'est une mise à jour d'un programme existant déjà dans mon Puppy, j'aime bien
ajouter, pour éviter les écrasements... : (le mot est choisi exprès...)
./configure --prefix=/usr --program-suffix=-[no de version]
Après l'installation, je donne une extension distincte à l'ancien programme et je fais
un lien portant le vrai nom du programme.
Par exemple, parlant de pekwm :
./configure --prefix=/usr --program-suffix=-1.17git
Ensuite, après l'installation, je renomme mon ancien pekwm à pekwm-1.16 et je fais
un lien de pekwm-1.17git à pekwm.
2) Cela fait, taper
make (selon la taille du programme, t'as le temps d'aller faire la vaisselle ou de lire
ton journal !)
3) Quand la fabrication est terminée, taper
make DESTDIR=[un dossier nouveau où "verser" la compilation] install
Il est commode de grouper le résultat de la compilation en un même endroit, pour
pouvoir faire facilement des archives *.pet distribuables par la suite.
4) La copie étant faite (car, au fond, l'installation, sur Linux, est une opération de
copie à des endroits bien précis de la structure Linux), va dans ce nouveau dossier,
trouve les dossiers de type /usr/bin et /usr/lib et tape :
strip --strip-unneeded [nom de l'exécutable ou de la biblio *.so]
Cela enlève les notes de débogage stockées automatiquement dans l'exécutable ou la
biblio pendant la compilation. Une fois que le programme fonctionne, on n'a plus à le
déboguer, n'est-ce pas ?
Donc ces notes sont inutiles. Les "effeuiller" par la fonction strip peut faire gagner un
espace considérable. Par exemple, pekwm se compile à +/- 15 Mo. Après l'opération
de strip, il fait aux alentours de 700 Ko (selon la version).
Pour les biblios, le gain en espace est beaucoup moins important, mais on peut avoir
des surprises.
Je sais que Médor procède un peu différemment pour le "strip", mais le résultat au
final est le même. Nul doute que sa grande expérience va l'amener à mettre de la
chair sur le schéma que je viens de te proposer.
5) Je fais un pet avec le script dir2pet.
6) J'installe le pet en question.
7) Je teste.
8 ) Je m'arrache les cheveux et je recommence... ou je me crie bravo !
Voilà. C'est pas sorcier, mais il faut suivre les étapes.
D) J'allais oublier : il faut aussi beaucoup de patience et parfois de l'entêtement !
À+
musher0
R. :
A) De l'intelligence. (Ç'a pas l'air d'être un problème !)
B) Le fichier devx correspondant à ton Puppy ou Toutou. Celui du uPupRaring 3.9.9.2
est à :http://www.smokey01.com/pemasu/UpupRari ... aring3992/
C) Lire attentivement le fichier INSTALL du logiciel que tu veux compiler.
En gros, les étapes sont
0) Déballer la source (tar.bz2 ou similaire) et entrer dans le dossier ainsi créé.
1) Taper
./configure --help (pour passer en revue les paramètres généraux) et
./configure --help=short (pour étudier les paramètres propres au programme que
tu veux compiler)
En général
./configure --prefix=/usr
est suffisant. Autrement, le programme se placera par défaut dans /usr/local/bin, ce
qu'on essaye d'éviter dans Puppy.
Si c'est une mise à jour d'un programme existant déjà dans mon Puppy, j'aime bien
ajouter, pour éviter les écrasements... : (le mot est choisi exprès...)
./configure --prefix=/usr --program-suffix=-[no de version]
Après l'installation, je donne une extension distincte à l'ancien programme et je fais
un lien portant le vrai nom du programme.
Par exemple, parlant de pekwm :
./configure --prefix=/usr --program-suffix=-1.17git
Ensuite, après l'installation, je renomme mon ancien pekwm à pekwm-1.16 et je fais
un lien de pekwm-1.17git à pekwm.
2) Cela fait, taper
make (selon la taille du programme, t'as le temps d'aller faire la vaisselle ou de lire
ton journal !)
3) Quand la fabrication est terminée, taper
make DESTDIR=[un dossier nouveau où "verser" la compilation] install
Il est commode de grouper le résultat de la compilation en un même endroit, pour
pouvoir faire facilement des archives *.pet distribuables par la suite.
4) La copie étant faite (car, au fond, l'installation, sur Linux, est une opération de
copie à des endroits bien précis de la structure Linux), va dans ce nouveau dossier,
trouve les dossiers de type /usr/bin et /usr/lib et tape :
strip --strip-unneeded [nom de l'exécutable ou de la biblio *.so]
Cela enlève les notes de débogage stockées automatiquement dans l'exécutable ou la
biblio pendant la compilation. Une fois que le programme fonctionne, on n'a plus à le
déboguer, n'est-ce pas ?
Donc ces notes sont inutiles. Les "effeuiller" par la fonction strip peut faire gagner un
espace considérable. Par exemple, pekwm se compile à +/- 15 Mo. Après l'opération
de strip, il fait aux alentours de 700 Ko (selon la version).
Pour les biblios, le gain en espace est beaucoup moins important, mais on peut avoir
des surprises.
Je sais que Médor procède un peu différemment pour le "strip", mais le résultat au
final est le même. Nul doute que sa grande expérience va l'amener à mettre de la
chair sur le schéma que je viens de te proposer.
5) Je fais un pet avec le script dir2pet.
6) J'installe le pet en question.
7) Je teste.
8 ) Je m'arrache les cheveux et je recommence... ou je me crie bravo !
Voilà. C'est pas sorcier, mais il faut suivre les étapes.
D) J'allais oublier : il faut aussi beaucoup de patience et parfois de l'entêtement !
À+
musher0
Last edited by musher0 on Sun 25 May 2014, 18:00, edited 1 time in total.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Bonsoir Musher0,
Merci pour ta longue réponse et pour le point A ! On va pouvoir tester si tu as raison !
De même pour le devx qui semble être la seule chose nécessaire... sauf que quand ce matin j'ai tenté de compiler j'ai eu un message m'indiquant qu'il ne trouvait pas gcc : pas de compilateur. J'ai installé gcc mais ça lui a fait ni chaud ni froid ! Je n'avais bien entendu pas le devx.
Je me suis donc dit qu'il fallait des pré requis au niveau des paquets installés pour pouvoir compiler.
Le devx comprend l'ensemble du paquet cadeau nécessaire ?
L'emploi du dir2pet va demander aussi une petite explication je suppose.
Mais c'est vrai que quitte à compiler autant aller jusqu'au bout et faire le .pet.
A te lire,
Philippe
Merci pour ta longue réponse et pour le point A ! On va pouvoir tester si tu as raison !
De même pour le devx qui semble être la seule chose nécessaire... sauf que quand ce matin j'ai tenté de compiler j'ai eu un message m'indiquant qu'il ne trouvait pas gcc : pas de compilateur. J'ai installé gcc mais ça lui a fait ni chaud ni froid ! Je n'avais bien entendu pas le devx.
Je me suis donc dit qu'il fallait des pré requis au niveau des paquets installés pour pouvoir compiler.
Le devx comprend l'ensemble du paquet cadeau nécessaire ?
L'emploi du dir2pet va demander aussi une petite explication je suppose.
Mais c'est vrai que quitte à compiler autant aller jusqu'au bout et faire le .pet.
A te lire,
Philippe
Bon arpès-midi, augras !
Une petite précaution : enlève le gcc que tu as mis avant d'ajouter le devx ? Il y a déjà
un gcc dans le devx, et je crais que ça déroute notre Puppy.
Pour créer un pet, là encore, c'est tout simple :
tu te places devant le dossier (pour ainsi dire), pas dedans !
tu tapes
dir2pet gnumeriche-44.7_machin (le nom du dossier du programme)
et tu tapes < retour > à chaque invite.
Quand le panneau apparaît, tu essaies de mettre des informations "parlantes" dans
les champs du milieu, qui sont vides.
Tu tapes ok et c'est fait.
Outre la facilité de distribution, le "package manager" du Puppy enregistre les
installations de fichiers *.pet. Il est ainsi très facile de désinstaller un programme qui
ne convient pas, s'il y a lieu.
Bye !
musher0
Une petite précaution : enlève le gcc que tu as mis avant d'ajouter le devx ? Il y a déjà
un gcc dans le devx, et je crais que ça déroute notre Puppy.
Pour créer un pet, là encore, c'est tout simple :
tu te places devant le dossier (pour ainsi dire), pas dedans !
tu tapes
dir2pet gnumeriche-44.7_machin (le nom du dossier du programme)
et tu tapes < retour > à chaque invite.
Quand le panneau apparaît, tu essaies de mettre des informations "parlantes" dans
les champs du milieu, qui sont vides.
Tu tapes ok et c'est fait.
Outre la facilité de distribution, le "package manager" du Puppy enregistre les
installations de fichiers *.pet. Il est ainsi très facile de désinstaller un programme qui
ne convient pas, s'il y a lieu.
Bye !
musher0
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Bon, j'ai toutes les explications : y'a plus qu'à !
Ici il est maintenant 20h donc pas trop bricoler ce soir.
Pour le gcc à désinstaller pas de soucis : je recommence un beau pupsave tout propre car j'avais un peu trop bricolé et celui que j'ai en sauvegarde ne me plait plus trop... et puis il faut garder la main : repartir à zéro avec tous les petits réglages à faire histoire de ne pas les oublier !
Je vais tester la compilation sur un truc simple et en mode ram.
Merci Musher,
Philippe
Ici il est maintenant 20h donc pas trop bricoler ce soir.
Pour le gcc à désinstaller pas de soucis : je recommence un beau pupsave tout propre car j'avais un peu trop bricolé et celui que j'ai en sauvegarde ne me plait plus trop... et puis il faut garder la main : repartir à zéro avec tous les petits réglages à faire histoire de ne pas les oublier !
Je vais tester la compilation sur un truc simple et en mode ram.
Merci Musher,
Philippe
Recherchons compilateurs en urgence
Recherchons compilateurs en urgence. Les nouveaux ne seront pas de trop. Qui peut me compiler Tellico ?
Résolu : Tellico a déjà été compilé
Résolu : Tellico a déjà été compilé
Last edited by Pelo on Sun 15 Feb 2015, 18:01, edited 2 times in total.
Bonjour,
Pour l'archive de Tellico, Jejy l'a retiré des deux dépôts ainsi que de nombreux paquets et images iso.
(Voir éventuellement dans les dépôts de peebee).
Pour compiler une application kde (comme Tellico), il faut les sources de la version de Qt en plus du sfs de kde et du devx de la version de Puppy utilisée.
Les régles de compilation sont différentes de celles des programmes utilisant autotools.
Cordialement,
Médor.
Pour l'archive de Tellico, Jejy l'a retiré des deux dépôts ainsi que de nombreux paquets et images iso.
(Voir éventuellement dans les dépôts de peebee).
Pour compiler une application kde (comme Tellico), il faut les sources de la version de Qt en plus du sfs de kde et du devx de la version de Puppy utilisée.
Les régles de compilation sont différentes de celles des programmes utilisant autotools.
Cordialement,
Médor.
Last edited by Médor on Tue 27 May 2014, 11:30, edited 1 time in total.
Salut, pelo, Médor, et tout le monde.Médor wrote:Bonjour,
Pour l'archive de Telico, Jejy l'a retiré des deux dépôts ainsi que de nombreux paquets et images iso.
(Voir éventuellement dans les dépôts de peebee).
Pour compiler une application kde (comme Telico), il faut les sources de la version de Qt en plus du sfs de kde et du devx de la version de Puppy utilisée.
Les régles de compilation sont différentes de celles des programmes utilisant autotools.
Cordialement,
Médor.
Pour ma part, j'ai encore des croûtes à manger avant de m'attaquer à compiler un
programme Qt. Il faut savoir choisir ses bagarres...
D'autant que les Puppy-istes peuvent déjà utiliser l'excellent DataCrow, recommandé,
comme c'est curieux ( ), comme solution de rechange sur le site même du Tellico...
M'enfin. À+.
musher0
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
Compiler un programme QT
Re,
En principe les programmes QT utilisent qmake, il y a dans ce cas un fichier .pro et l'on doit générer en premier le fichier makefile par la commande qmake puis make, etc.
Cordialement,
Médor.
En principe les programmes QT utilisent qmake, il y a dans ce cas un fichier .pro et l'on doit générer en premier le fichier makefile par la commande qmake puis make, etc.
Cordialement,
Médor.
Un autre
Pour compiler un paquet source contenant un fichier CMakeLists.txt, pour générer le makefile faire depuis le répertoire du programme source :
Etc.
Cordialement,
Médor.
Pour compiler un paquet source contenant un fichier CMakeLists.txt, pour générer le makefile faire depuis le répertoire du programme source :
Code: Select all
mkdir ./build
cd ./build
cmake ..
make
Cordialement,
Médor.
L'archive de tellico est dans archives.org
Clos : L'archive de tellico est dans archives.org
Last edited by Pelo on Sun 15 Feb 2015, 18:03, edited 8 times in total.
Salut, pelo.
(À lire en grommellant !)
Heureusement qu'il y a wordreference...
Donc une usine à gaz, c'est un truc à l'administration lourde. c'est très malcommode
à manoeuvrer, c'est compliqué sans raison. Un éléphant blanc, quoi.
Là, je comprends. Bon, ben, pelo, j'ai des p'tites nouvelles pour toi.
Tu veux une base de données légère, qui fait le boulot sans flafla ni tralala?
On l'a déjà dans Puppy, c'est gnumeric. C'est pas juste pour les calculs.
Si tu mets des en-têtes à ses colonnes, ça devient une base de données.
Gnumeric a au moins 64x64 cellules par page, donc 4 096 endroits où placer de
l'information. Si c'est pas assez, tu crées une nouvelle page, et tu continues.
L'ordre, la logique et le traitement des données, comme dans n'importe quelle
base de données, dépend de la puissance de traitement du cerveau de l'opérateur
/ trice et de la capacité du dit cerveau à faire des liens signifiants.
À tout prendre, même une feuille de papier quadrillé bien titrée, avec des données
positionnées dessus de manière intelligente, pourrait faire une meilleure base de
données que n'importe quel Tellico.
Bonne nuit !
musher0
(À lire en grommellant !)
Heureusement qu'il y a wordreference...
Donc une usine à gaz, c'est un truc à l'administration lourde. c'est très malcommode
à manoeuvrer, c'est compliqué sans raison. Un éléphant blanc, quoi.
Là, je comprends. Bon, ben, pelo, j'ai des p'tites nouvelles pour toi.
Tu veux une base de données légère, qui fait le boulot sans flafla ni tralala?
On l'a déjà dans Puppy, c'est gnumeric. C'est pas juste pour les calculs.
Si tu mets des en-têtes à ses colonnes, ça devient une base de données.
Gnumeric a au moins 64x64 cellules par page, donc 4 096 endroits où placer de
l'information. Si c'est pas assez, tu crées une nouvelle page, et tu continues.
L'ordre, la logique et le traitement des données, comme dans n'importe quelle
base de données, dépend de la puissance de traitement du cerveau de l'opérateur
/ trice et de la capacité du dit cerveau à faire des liens signifiants.
À tout prendre, même une feuille de papier quadrillé bien titrée, avec des données
positionnées dessus de manière intelligente, pourrait faire une meilleure base de
données que n'importe quel Tellico.
Bonne nuit !
musher0
- Attachments
-
- gnumeric-comme-base-de-donnees.jpg
- (32.15 KiB) Downloaded 296 times
-
- usine-a-gaz.jpg
- (15.12 KiB) Downloaded 297 times
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)
On veut des fiches item par item, une fiche, un matériel
On veut des fiches item par item, une fiche, un matériel. Comme nos bonnes vieilles fiches cartonnées d'autrefois qu'on rangeait dans les boites à fiches. C'est vraiment l'outil du bureaucrate hyper classique.
Mon propos était plûtot comment modifier la structure des fichiers des logiciels existants. Au lieu de taduire mot pour mot en français, on traduit les fichiers .po en les adaptant. et on compile tout çà.
Bla bla hors sujet enlevé.
Mon propos était plûtot comment modifier la structure des fichiers des logiciels existants. Au lieu de taduire mot pour mot en français, on traduit les fichiers .po en les adaptant. et on compile tout çà.
Bla bla hors sujet enlevé.
Last edited by Pelo on Thu 29 May 2014, 03:17, edited 2 times in total.
je parlais de Compiler Tellico
je parlais de Compiler Tellico. Il y a eu débat sur les solutions de rechange. Vieux débat déjà traité par ailleurs.
Compilons autre chose. En fait il n'y a pas tellement de logiciels a compiler que ne le sont déjà. Ceux qui ne le sont pas encore, voilà où il faut viser.
Pilez, compilez Imagination, par exemple. Je ne sais pas faire. Les autres non plus... ? Don 570 a presque tout compilé, après vérification. Il est fort... et altruiste.
Par contre compiler OSMO, j'y arrive. Enfin, 95% du travail avait déjà été fait. Osmo est déjà installé. Je n'ai fait que de petites retouches.
Compilons autre chose. En fait il n'y a pas tellement de logiciels a compiler que ne le sont déjà. Ceux qui ne le sont pas encore, voilà où il faut viser.
Pilez, compilez Imagination, par exemple. Je ne sais pas faire. Les autres non plus... ? Don 570 a presque tout compilé, après vérification. Il est fort... et altruiste.
Par contre compiler OSMO, j'y arrive. Enfin, 95% du travail avait déjà été fait. Osmo est déjà installé. Je n'ai fait que de petites retouches.
Last edited by Pelo on Thu 29 May 2014, 15:30, edited 4 times in total.
Jejy69 a compilé Tellico 2.3.7 sous Slacko
Jejy69 a compilé Tellico 2.3.7 sous Slacko. J'enlève, çà les enérve ? Compiler une gestion de collection Qt est hors sujet ? Bref Qt ils savent pas faire, c'est le non-dit.
- Attachments
-
- lokalize.jpg
- Comme vous focalisez sur Tellico, voici l'erreur sur une autre appli.
- (27.53 KiB) Downloaded 63 times
Last edited by Pelo on Tue 10 Feb 2015, 03:44, edited 10 times in total.
-
- Posts: 571
- Joined: Fri 25 Mar 2011, 20:10
- Location: France