Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

construire une série de paquets interdépendants

25 réponses
Avatar
Gaëtan PERRIER
Bonjour,

Je voudrais construire les paquets xfce 4.12 sur une stable+backports.
Le probl=E8me c'est que rapidement on se retrouve avec des paquets qui pour=
=EAtre
construit ont des d=E9pendances sur des paquets que l'on vient de construir=
e.
Je me retrouve donc bloqu=E9.
Comment r=E9soudre ce probl=E8me ?

Ga=EBtan

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: https://lists.debian.org/20150310210854.904226dea8ec931302088b1e@neuf.fr

10 réponses

1 2 3
Avatar
mrr
On 03/13/2015 04:00 PM, Sébastien NOBILI wrote:
Le vendredi 13 mars 2015 à 13:30, mrr a écrit :
On 03/13/2015 08:10 AM, mrr wrote:
L'installation, c'est en gros une décompression suivie d'une copie, à
part à être très gros, y'a pas de raison (que je vois).



Oups, je suis allé un peu vite, là je parlais de l'installation d'un .deb. A
partir des sources c'est clair que c'est pas la même!



Pour les sources, c'est à peu près la même chose. Il y a 3 fichiers :
- le « .orig.tar.gz » qui contient les sources amont;
- le « .diff.gz » qui contient tous les ajouts Debian;
- le « .dsc » qui contient la description et les sommes de contrôle.

« Installer » un paquet source consiste à :
- télécharger les 3 fichiers;
- extraire l'archive;
- patcher avec les ajouts Debian (lesquels ajouts pouvant être des patches
avec lesquels on va patcher le code amont).



Là il y a un truc que je comprend pas, n'y aurait-il point une étape de
compilation?

Donc aucune raison particulière à ce que ça plombe à ce point les performances
de la machine.

Que donnent les commande « top » et « iotop » ?

Sébastien





--
mrr

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/5503063b$0$3361$
Avatar
S
Le vendredi 13 mars 2015 à 17:46, mrr a écrit :
>« Installer » un paquet source consiste à :
> - télécharger les 3 fichiers;
> - extraire l'archive;
> - patcher avec les ajouts Debian (lesquels ajouts pouvant être des patches
> avec lesquels on va patcher le code amont).

Là il y a un truc que je comprend pas, n'y aurait-il point une étape de
compilation?



Pardon, c'est vrai que ce n'est pas très clair…

« Installer » un paquet source au sens apt-src (et c'est d'ailleurs pour ça que
j'ai mis des guillemets à chaque fois que j'ai utilisé ce terme) consiste à
extraire l'arborescence de sources à un endroit donné et à se souvenir qu'elle
est là pour pouvoir la mettre à jour plus tard.

La compilation vient ensuite, mais ce n'est plus apt-src qui s'en charge (en
l'occurrence c'est « dpkg-buildpackage »).

En gros c'est plusieurs étapes :
- « installer » les sources avec apt-src;
- compiler le paquet source;
- installer le paquet binaire (avec « dpkg »).

Est-ce plus clair ?

Sébastien

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Gaëtan PERRIER
Le Fri, 13 Mar 2015 08:42:07 +0100
mrr a écrit:

On 03/13/2015 12:20 AM, Gaëtan PERRIER wrote:
> J'ai commencé pour l'instant ça se passe bien sauf que l'installati on des
> paquets via apt-get src ou install est très lente et bloque les acc ès
> disques aux autres applications. Est-ce normal ?

Ben non, imo.

Enfin, c'est une usine à gaz, ton programme?



Non mais même quand il installe des petits paquets quand il installe des
dépendances c'est lent.
Enfin après mon point de comparaison est sur mon système de base qui es t sur
SSD alors que là le chroot est sur un disque dur.

Mais lors de la compil ça se passe normalement.


L'installation, c'est en gros une décompression suivie d'une copie, à
part à être très gros, y'a pas de raison (que je vois).

T'as genre des logs (chais pas, syslog)?



Rien de spécial dans syslog

La liste des fichiers du programme (dpkg -L *.deb je crois) et leur
taille (du)?
La liste des fichiers modifiés sur le système (touch timestamp && fin d /
-type f -mnewer timestamp) ou même accédés (-anewer) après une in stallation?

Si t'es vraiment prêt à payer quelqu'un pour te le faire (+ mise à jour
s'entend), je crois qu'on est pas mal ici à pouvoir s'en occuper.



Non j'ai envie d'apprendre à le faire. Je ne suis pas spécialement pres sé.


Et quand tu dis bloque les accès disque, c'est pour dire ralentit, c'es t ça?



La LED d'accès disque est allumée en fixe et quand les autres programmes
veulent accéder aux disques y a un gros lag ...


Au pire, t'as des outils de traçage (genre strace et/ou mtrace) ou
encore gdb (nan, je délire là!).



Certes mais après faut savoir interpréter ... :)

Gaëtan

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Gaëtan PERRIER
Le Fri, 13 Mar 2015 15:59:16 +0100
Sébastien NOBILI a écrit:


Donc aucune raison particulière à ce que ça plombe à ce point les
performances de la machine.

Que donnent les commande « top » et « iotop » ?




iotop fait ressortir jbd2 (si j'ai bien compris c'est la journalisation
d'ext4) ...

Gaëtan

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
Ga
Le Fri, 13 Mar 2015 00:15:20 +0100
Gaëtan PERRIER a écrit:

Le Thu, 12 Mar 2015 01:44:15 +0100
Gaëtan PERRIER a écrit:

> Le Wed, 11 Mar 2015 10:41:33 +0100
> Sébastien NOBILI a écrit:
>
> > Bonjour,
> >
> > Le mardi 10 mars 2015 à 21:08, Gaëtan PERRIER a écrit :
> > > Je voudrais construire les paquets xfce 4.12 sur une stable+backports.
> > > Le problème c'est que rapidement on se retrouve avec des paquets qui
> > > pour être construit ont des dépendances sur des paquets que l'on vient
> > > de construire. Je me retrouve donc bloqué.
> > > Comment résoudre ce problème ?
> >
> > Suite à une discussion ici-même (il y a quelques années), j'ai découvert
> > « apt-src ».
> >
> > Il permet justement (entre autres) de répondre à ce genre de problème.
> >
> > Voilà comment je l'ai configuré :
> > - création d'un chroot sur la branche stable (pour éviter de pourrir
> > mon système) dans lequel je rentre avec l'excellent « schroot »;
> > - installation de « apt-src » (évidemment);
> > - ajout des « deb-src » de testing et unstable dans le sources.list;
> > - « installation » des sources du paquet qui m'intéresse avec apt-src
> > dans un dossier personnel :
> > apt-src install xfce4
> > (note, dans ton cas, tu n'auras pas la 4.12 mais la 4.10 à moins
> > d'ajouter de « deb-src » de experimental).
> >
> > À « l'installation » d'un paquet source, apt-src se charge
> > automatiquement de rapatrier les dépendances quand elles sont
> > disponibles.
> >
> > Si une dépendance n'est pas disponible, je récupère le paquet source
> > (toujours avec apt-src), je le compile et je l'installe (cette étape peut
> > nécessiter de se créer une liste de dépendances pour éviter de s'y
> > perdre).
> >
> > Tu parles de paquets « interdépendants ». Dans la pratique ce n'est
> > jamais le cas (problème de poule et d'œuf), il y a forcément un point de
> > départ qui te permettra de générer toute la chaîne.
> >
> > Pour les tâches de maintenance courante :
> > apt-src update
> > apt-src upgrade
> >
> > Ce qui permet de récupérer les mises-à-jour lorsque le paquet source
> > bouge.
> >
> > Sébastien
> >
>
> Merci, pour cette explication je vais essayer de suivre ce que tu indiques.
>

J'ai commencé pour l'instant ça se passe bien sauf que l'installation des
paquets via apt-get src ou install est très lente et bloque les accès disques
aux autres applications. Est-ce normal ?

Gaëtan




Je me demande si le problème ne vient pas du fait que la partition sur
laquelle est le chroot est quasi pleine (<2% de libre).
Par contre je ne sais pas comment déplacer le chroot. J'ai essayé de le copier
ailleurs mais la copie ne s'arrête jamais et dans la destination quand je fais
un du -h j'ai le point qui gonfle, gonfle, gonfle j'ai donc arrêté (il était à
140Go)

Gaëtan

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
mrr
On 03/13/2015 11:00 PM, Gaëtan PERRIER wrote:
>J'ai commencé pour l'instant ça se passe bien sauf que l'installation des
>paquets via apt-get src ou install est très lente et bloque les accès disques
>aux autres applications. Est-ce normal ?
>
>Gaëtan
>


Je me demande si le problème ne vient pas du fait que la partition sur
laquelle est le chroot est quasi pleine (<2% de libre).



Moi, je dirais que c'est une bonne présomption en tout cas.

Par contre je ne sais pas comment déplacer le chroot. J'ai essayé de le copier
ailleurs mais la copie ne s'arrête jamais et dans la destination quand je fais
un du -h j'ai le point qui gonfle, gonfle, gonfle j'ai donc arrêté (il était à
140Go)



En fait, comment tu t'y prends pour le copier, ton chroot (et tu peux
pas juste te "chrooter" ailleurs?)?

J'imagine que tu dois ruser un peu (étant donné que dans le chroot tu es
censé être isolé), tu te sers d'un bind mount, tu montes une autre
partition dedans?

En tout cas, il pourrait y avoir un truc récursif derrière ça.

--
mrr

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/5503b623$0$2980$
Avatar
Gaëtan PERRIER
Le Sat, 14 Mar 2015 06:16:36 +0100
mrr a écrit:

On 03/13/2015 11:00 PM, Gaëtan PERRIER wrote:
>> >J'ai commencé pour l'instant ça se passe bien sauf que l'installa tion des
>> >paquets via apt-get src ou install est très lente et bloque les acc ès
>> >disques aux autres applications. Est-ce normal ?
>> >
>> >Gaëtan
>> >
> Je me demande si le problème ne vient pas du fait que la partition sur
> laquelle est le chroot est quasi pleine (<2% de libre).

Moi, je dirais que c'est une bonne présomption en tout cas.



Perdu ...


> Par contre je ne sais pas comment déplacer le chroot. J'ai essayé d e le
> copier ailleurs mais la copie ne s'arrête jamais et dans la destinati on
> quand je fais un du -h j'ai le point qui gonfle, gonfle, gonfle j'ai do nc
> arrêté (il était à 140Go)

En fait, comment tu t'y prends pour le copier, ton chroot (et tu peux
pas juste te "chrooter" ailleurs?)?



Comment ça chrooter ailleurs ? Je n'ai pas compris ce que tu veux dire.


J'imagine que tu dois ruser un peu (étant donné que dans le chroot tu es
censé être isolé), tu te sers d'un bind mount, tu montes une autre
partition dedans?

En tout cas, il pourrait y avoir un truc récursif derrière ça.




Oui effectivement j'avais fait des bind mount comme préconisé ici:
https://wiki.debian.org/fr/Chroot
une fois retiré le déplacement se passe bien.

Par contre je constate la même lenteur.

Gaëtan

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
mrr
On 03/14/2015 11:40 AM, Gaëtan PERRIER wrote:
Le Sat, 14 Mar 2015 06:16:36 +0100
mrr a écrit:

On 03/13/2015 11:00 PM, Gaëtan PERRIER wrote:
J'ai commencé pour l'instant ça se passe bien sauf que l'installation des
paquets via apt-get src ou install est très lente et bloque les accès
disques aux autres applications. Est-ce normal ?

Gaëtan





Je me demande si le problème ne vient pas du fait que la partition sur
laquelle est le chroot est quasi pleine (<2% de libre).



Moi, je dirais que c'est une bonne présomption en tout cas.



Perdu ...



Dac.


Par contre je ne sais pas comment déplacer le chroot. J'ai essayé de le
copier ailleurs mais la copie ne s'arrête jamais et dans la destination
quand je fais un du -h j'ai le point qui gonfle, gonfle, gonfle j'ai donc
arrêté (il était à 140Go)



En fait, comment tu t'y prends pour le copier, ton chroot (et tu peux
pas juste te "chrooter" ailleurs?)?



Comment ça chrooter ailleurs ? Je n'ai pas compris ce que tu veux dire.



Je ne peux pas te répondre vu que j'ignore pourquoi tu utilises un
chroot à la base. Le chroot permettant d'avoir un système
(partiellement) isolé du reste du système (de fichier), j'imagine que tu
l'utilises comme un environnement de programmation ce qui d'ailleurs
expliquerait que tu cherches à "déplacer le chroot" au lieu simplement
d'en créer un autre.
Mais ça c'est que des hypothèses, autant ça a rien à voir.


J'imagine que tu dois ruser un peu (étant donné que dans le chroot tu es
censé être isolé), tu te sers d'un bind mount, tu montes une autre
partition dedans?

En tout cas, il pourrait y avoir un truc récursif derrière ça.




Oui effectivement j'avais fait des bind mount comme préconisé ici:
https://wiki.debian.org/fr/Chroot
une fois retiré le déplacement se passe bien.

Par contre je constate la même lenteur.



Là, je crois qu'il faudrait recommencer au début si tu veux que ça
avance, quel système (wheezy, jessie...)?

Quel compilateur java?

Qu'est-ce qui est lent, on parle d'une compilation ou d'une installation?

Une mise à jour est-elle lente aussi (des sources ou des données?)?

Peux-tu découper la procédure lente en un maximum de processus, par
exemple compiler à la main chaque fichier source, résultat?

Utilises-tu une base de données.

Je sais plus mais y'a pas un mode verbose/débug en java, non? (T'es en
java d'ailleurs, je trouve plus là?)

A l’exécution, c'est lent aussi?

As-tu essayer d'installer un paquet similaire dans ton chroot, résultat?

Peux-tu essayer d'installer ton paquet sur un autre système, résultat?

Si on est bien en java, il ne faut bien sûr pas oublier que c'est jamais
très rapide le chargement de la machine virtuelle (à l'exécution donc).

Oups, je suis sur ton 1er message, xfce 4.12 + stable/backports, autant
pour moi!

Ben justement, tu construis xfce, ça veut dire quoi? C'est xfce que tu
construit? Ou ton programme dépend de xfce? Dans ce cas, peux-tu lancer
ton programme en mode texte seulement?
(Et pourquoi tu dépendrais de xfce si c'est du java d'ailleurs? Tu
utilises swing?)

Gaëtan





--
mrr

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/550469cd$0$2981$
Avatar
Ga
Le Sat, 14 Mar 2015 19:03:10 +0100
mrr a écrit:


>>
>>> Par contre je ne sais pas comment déplacer le chroot. J'ai essayé de le
>>> copier ailleurs mais la copie ne s'arrête jamais et dans la destination
>>> quand je fais un du -h j'ai le point qui gonfle, gonfle, gonfle j'ai donc
>>> arrêté (il était à 140Go)
>>
>> En fait, comment tu t'y prends pour le copier, ton chroot (et tu peux
>> pas juste te "chrooter" ailleurs?)?
>
> Comment ça chrooter ailleurs ? Je n'ai pas compris ce que tu veux dire.

Je ne peux pas te répondre vu que j'ignore pourquoi tu utilises un
chroot à la base. Le chroot permettant d'avoir un système
(partiellement) isolé du reste du système (de fichier), j'imagine que tu
l'utilises comme un environnement de programmation ce qui d'ailleurs
expliquerait que tu cherches à "déplacer le chroot" au lieu simplement
d'en créer un autre.
Mais ça c'est que des hypothèses, autant ça a rien à voir.




La raison est dans le premier message de ce fil. ;) J'essaie de construire
XFCE 4.12 pour Wheezy.
Mais pour le déplacement c'est bon j'ai réussi.


>>
>> J'imagine que tu dois ruser un peu (étant donné que dans le chroot tu es
>> censé être isolé), tu te sers d'un bind mount, tu montes une autre
>> partition dedans?
>>
>> En tout cas, il pourrait y avoir un truc récursif derrière ça.
>>
>
> Oui effectivement j'avais fait des bind mount comme préconisé ici:
> https://wiki.debian.org/fr/Chroot
> une fois retiré le déplacement se passe bien.
>
> Par contre je constate la même lenteur.

Là, je crois qu'il faudrait recommencer au début si tu veux que ça
avance, quel système (wheezy, jessie...)?

Quel compilateur java?

Qu'est-ce qui est lent, on parle d'une compilation ou d'une installation?



Comme déjà dit c'est l'installation qui est lente. Les phases Unpacking et
suivante.


Une mise à jour est-elle lente aussi (des sources ou des données?)?



Tu veux dire un apt-get update ? Non.


Peux-tu découper la procédure lente en un maximum de processus, par
exemple compiler à la main chaque fichier source, résultat?



On s'égare. :) Je n'ai pas de problème de compilation. C'est une lenteur lors
de l'installation d'un installation de paquet.


A l’exécution, c'est lent aussi?



Non.


As-tu essayer d'installer un paquet similaire dans ton chroot, résultat?

Peux-tu essayer d'installer ton paquet sur un autre système, résultat?




Dans une machine virtuelle wheezy ce n'est pas aussi lent.


Oups, je suis sur ton 1er message, xfce 4.12 + stable/backports, autant
pour moi!

Ben justement, tu construis xfce, ça veut dire quoi? C'est xfce que tu
construit? Ou ton programme dépend de xfce? Dans ce cas, peux-tu lancer
ton programme en mode texte seulement?



oui c'est xfce 4.12 que j'essaie de construire mais la je bloque sur une
dépendance cyclique.

xfce4-settings dépend de upower >= 0.99 qui dépend de glib2.0 >= 2.36 qui
dépend de python >= 2.7.5 qui dépend de dpkg >= 1.17.11 et c'est là que le
problème arrive car lors du configure il y a une erreur car le gcc 4.7 ne
connait pas l'option stack-protector-strong donc il faudrait mettre gcc à jour
mais pour installer gcc 4.9 il faut dpkg-dev >= 1.17.11 ...

Gaëtan

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Avatar
mrr
On 03/14/2015 07:00 PM, Gaëtan PERRIER wrote:
oui c'est xfce 4.12 que j'essaie de construire mais la je bloque sur une
dépendance cyclique.



Dac, j'étais loin du compte en fait!

xfce4-settings dépend de upower >= 0.99 qui dépend de glib2.0 >= 2.36 qui
dépend de python >= 2.7.5 qui dépend de dpkg >= 1.17.11 et c'est là que le
problème arrive car lors du configure il y a une erreur car le gcc 4.7 ne
connait pas l'option stack-protector-strong donc il faudrait mettre gcc à jour
mais pour installer gcc 4.9 il faut dpkg-dev >= 1.17.11 ...



Le configure, c'est avant la compilation, on est d'accord?
Et l'erreur serait la cause de la lenteur mais n’empêcherait pas pour
autant l'installation, c'est ça ou je m'égare encore?
Curieux!

Peut être que tu serais gagnant à vérifier ton CFLAGS lors de la
compilation, et virer le cas échéant cette option.
Et vérifier le makefile.

Sinon, je cède la main, je vois pas trop à part:
- Bien sûr changer les options du configure (j'imagine que t'as déjà du
essayer), ou dans les évidents on a bien sûr passer sur une jessie.
- Aller voir le site de linux from scratch, ils sont fort pour tout
compiler.
- Aller farfouiller le code et trouver à quoi correspond ce
stack-protector-strong dans 4.9 et voir si on peut fainter dans 4.7 (bon
courage).

Je repasse si j'ai une idée.

--
mrr

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/5504ade2$0$3090$
1 2 3