[RESOLU]Que faut-il pour compiler ?

Message
Author
augras
Posts: 1487
Joined: Mon 11 Nov 2013, 17:37
Location: france

[RESOLU]Que faut-il pour compiler ?

#1 Post by augras »

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
Last edited by augras on Thu 29 Jan 2015, 16:49, edited 1 time in total.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#2 Post by musher0 »

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 ! :D

À+

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)

augras
Posts: 1487
Joined: Mon 11 Nov 2013, 17:37
Location: france

#3 Post by augras »

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

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#4 Post by musher0 »

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
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

augras
Posts: 1487
Joined: Mon 11 Nov 2013, 17:37
Location: france

#5 Post by augras »

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

Pelo

Recherchons compilateurs en urgence

#6 Post by Pelo »

Recherchons compilateurs en urgence. Les nouveaux ne seront pas de trop. Qui peut me compiler Tellico ?
Résolu : Tellico a déjà été compilé
Last edited by Pelo on Sun 15 Feb 2015, 18:01, edited 2 times in total.

Médor

#7 Post by Médor »

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.
Last edited by Médor on Tue 27 May 2014, 11:30, edited 1 time in total.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#8 Post by musher0 »

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.
Salut, pelo, Médor, et tout le monde.

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)

Médor

Compiler un programme QT

#9 Post by Médor »

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.

Médor

#10 Post by Médor »

Pour compiler un paquet source contenant un fichier Imakefile, pour générer le makefile faire une commande xmkmf, puis make, etc.

Cordialement,
Médor.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#11 Post by musher0 »

Merci, Médor, pour ces astuces.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

Médor

#12 Post by 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 :

Code: Select all

mkdir ./build
cd ./build
cmake ..
make
Etc.

Cordialement,
Médor.

Pelo

L'archive de tellico est dans archives.org

#13 Post by Pelo »

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.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#14 Post by musher0 »

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. :roll:

À 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)

Pelo

On veut des fiches item par item, une fiche, un matériel

#15 Post by Pelo »

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é.
Last edited by Pelo on Thu 29 May 2014, 03:17, edited 2 times in total.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#16 Post by musher0 »

Sauf qu'en parlant de tableurs et de BdD ici, on est hors sujet...
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

Pelo

je parlais de Compiler Tellico

#17 Post by Pelo »

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.
Last edited by Pelo on Thu 29 May 2014, 15:30, edited 4 times in total.

musher0
Posts: 14629
Joined: Mon 05 Jan 2009, 00:54
Location: Gatineau (Qc), Canada

#18 Post by musher0 »

Tu as raison, tout le monde peut. Il suffit d'avoir le souci du détail et de la patience.
musher0
~~~~~~~~~~
"You want it darker? We kill the flame." (L. Cohen)

Pelo

Jejy69 a compilé Tellico 2.3.7 sous Slacko

#19 Post by Pelo »

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.

jopervasco
Posts: 571
Joined: Fri 25 Mar 2011, 20:10
Location: France

#20 Post by jopervasco »

Bonsoir

voilà un ticket bien intéressant que je n'avais pas lu
je le mets en favori
bravo à tous

Post Reply