Aide > Le gestionnaire de paquets
problème pour complier dans une chroot32
guy_:
Bonjour,
J'essaie de compiler avec cards create -r <nom_du_paquet> dans une chroot 32bits lancée à partir d'une nutyx x86_64...
Pour utiliser cards dans la chroot32, je dois lancer la chroot avec
--- Code: ---sudo setarch linux32 chroot /chroot32
--- Fin du code ---
sinon il installe les paquet 64bits
La chroot est alors bien vue comme une 32 bits
--- Code: ---root [ / ]# uname -m
i686
--- Fin du code ---
Le problème que je recontre, c'est que cards ne reconnait pas les dependences à installer, bien qu'elles soit listées dans le Pkgfile
--- Code: ---/usr/ports/personnel/<nom_du_paquet> has no deps
--- Fin du code ---
et la compil finit évidemment par se planter.
Un paquet sans dépendances se compile sans problème.
Guy
Thierry:
Je vais regarder ça mais il me semble que c'est moins compliquer. J'avais eu à compiler Firefox de cette façon puisque la compilation de Firefox (même en 32 bits) reclamme au moins 6 Giga de RAM.
En gros j'installe une NuTyX 32 bits:
--- Code: ---sudo ARCH=i686 install-nutyx
--- Fin du code ---
Je rentre dans la chroot une fois installée
--- Code: ---sudo ARCH=i686 install-nutyx -ec
--- Fin du code ---
Ensuite je configure tout le truc pour pouvoir utiliser build-collection et faire par exemple:
--- Code: ---build-collection /stable/gui-extra firefox
--- Fin du code ---
guy_:
Salut Thierry,
Le problème semble plus général en 32 bits:
J'ai complété ma chrot32 pour en faire en une 32 bits 10.4 fixed, j'ai booté dessus et j'ai essayé da compiler (sans chroot)
et j'ai le même souci.
Avec
--- Code: ---cards create -r <non-du-paquet>
--- Fin du code ---
Cards supprime les paquets non dans base mais n'ajoute pas ceux repris dans la ligne "#Depends on:" du Pkgfile...
J'espère que tu auras un peu de temps pour regarder ceci avant la 11.0.
Merci
Guy
Thierry:
Salut Guy,
La commande cards create -r ne compile pas les dépendances, elle utilise TOUJOURS les binaires. Et si ces dépendances n'existent pas, le paquet final sera directement compilé et finira en erreur:
--- Code: ---cards create -h
--- Fin du code ---
Je vais essayer de t'expliquer la procédure à suivre, je crois que tu fais une petite erreur à un moment donné:
1. J'installe une NuTyX 32 bits dans le dossier /i686-rolling:
--- Code: ---ARCH=i686 LFS=/i686-rolling install-nutyx
--- Fin du code ---
2. Je rentre dans ma 32 bits:
--- Code: ---ARCH=i686 LFS=/i686-rolling install-nutyx -ec
--- Fin du code ---
3. Je rapatrie les ports qui m'intéressent pour ce test cad base,cli et gui:
--- Code: ---ports -u base
ports -u cli
ports -u gui
--- Fin du code ---
va y avoir quelque messages du genre:
This rsync lacks old-style --compress due to its external zlib. Try -zz.
Continuing without compression.
On peut les ignorer.
4. Je télécharge les paquets de development:
--- Code: ---get cards.devel
--- Fin du code ---
5. je rapatrie les binaires des 3 collections base, cli et gui
--- Code: ---for i in base cli gui
do
rsync -av --delete rsync://downloads.nutyx.org/nutyx/i686/rolling/$i/ /usr/ports/$i/
done
--- Fin du code ---
6. Je modifie mon /etc/cards.conf
--- Code: ---dir /usr/ports/gui
dir /usr/ports/cli
dir /usr/ports/base
....
## For all the graphical applications
dir /var/lib/pkg/depot/gui-extra|http://rsync.nutyx.org
#
## For a minimal graphical interface
# dir /var/lib/pkg/depot/gui|http://rsync.nutyx.org
#
## For all the console applications
dir /var/lib/pkg/depot/cli-extra|http://rsync.nutyx.org
#
## For a minimal console interface
# dir /var/lib/pkg/depot/cli|http://rsync.nutyx.org
#
## Chroot system without reboot possibilities for a chroot
# dir /var/lib/pkg/depot/base|http://rsync.nutyx.org
#
...
--- Fin du code ---
C'est à dire que je commente les dépots officiels de base, cli et gui et utilises les ports officiels AVEC LES BINAIRES dispos
Pour vérifier si la configuration est correcte, tu peux utiliser les commandes:
--- Code: ---cards config
1 Directory: /usr/ports/gui
2 Directory: /usr/ports/cli
3 Directory: /usr/ports/base
4 Directory: /var/lib/pkg/depot/nos from http://downloads.nutyx.org/i686/10.4/nos
5 Directory: /var/lib/pkg/depot/lxqt-extra from http://downloads.nutyx.org/i686/10.4/lxqt-extra
...
..
.
17 Directory: /var/lib/pkg/depot/gui-extra from http://downloads.nutyx.org/i686/10.4/gui-extra
18 Directory: /var/lib/pkg/depot/cli-extra from http://downloads.nutyx.org/i686/10.4/cli-extra
Base System list directory: /var/lib/pkg/depot/base
Binaries : i686
--- Fin du code ---
et
--- Code: ---cards level
0: /usr/ports/gui/gsfonts
0: /usr/ports/gui/libcap-ng
0: /usr/ports/gui/libdvbpsi
0: /usr/ports/gui/libsepol
0: /usr/ports/gui/printproto
0: /usr/ports/gui/tinyxml
0: /usr/ports/gui/xorg-font-alias
0: /usr/ports/gui/xorg-font-util
0: /usr/ports/gui/xorg-libpciaccess
0: /usr/ports/gui/xorg-util-macros
0: /usr/ports/gui/xorg-xbitmaps
0: /usr/ports/gui/xorgproto
0: /usr/ports/gui/xulrunner
0: /usr/ports/cli/ack
...
..
26: /usr/ports/gui/kguiaddons
26: /usr/ports/gui/kidletime
26: /usr/ports/gui/kwayland
26: /usr/ports/gui/kwindowsystem
26: /usr/ports/gui/oxygen-icons5
26: /usr/ports/gui/solid
27: /usr/ports/gui/libkscreen
--- Fin du code ---
7. Je peux maintenant compiler n'importe quel paquet des ces trois collections, mais si je ne modifie aucun Pkgfile, la compilation ne se fera pas puisque la version binaire est à jour.
guy_:
Thierry,
La manière don tu as reprécisé les choses m'a permis d'y voir plus clair.
--- Citation de: Thierry le sam. déc. 01 23:56:38 2018 ---La commande cards create -r ne compile pas les dépendances, elle utilise TOUJOURS les binaires.
Et si ces dépendances n'existent pas, le paquet final sera directement compilé et finira en erreur:
--- Fin de citation ---
Je pensais -naïvement- que s'il ne trouvait pas les dépendances binaires, il allait les télécharger ...
Après avoir fait un rsync des dépots base cli gui, j'ai pu compiler wine (32) et l'exécuter dans ma nutyx x86_64 après avoir copié les librairies 32 bits nécessaires (p.ex. dans /opt/i686) et configuré le loader.
Merci de ta réponse.
Navigation
[#] Page suivante
Utiliser la version classique