Dites, j'ai foo-1.2.3.deb
qui dépend de, perl
et python
cependant, la commande en cours d'exécution:
dpkg -i ./foo-1.2.3.deb
ne pas installer ces dépendances. Je dois donc apt-get install perl python
à la main.
Comment faire dpkg -i
installer ces dépendances pour moi automatiquement?
Réponses:
Après utilisation
dpkg
, l'exécution de la commande suivante m'a aidé à installer les dépendances requises:En tout, votre terminal devrait ressembler à ceci:
Remarquez la ligne à propos de
Setting up package_with_unsatisfied_dependencies
. Cela corrige (et termine) l'installation depackage_with_unsatisfied_dependencies.deb
.la source
sudo dpkg -i mypackage.deb
nouveau?sudo apt-get -f install
mon paquet, toutes les dépendances ont été installées. Courirsudo dpkg -i my_package.deb
n’est pas nécessaire et ne fera que réinstaller le paquet.sudo dpkg -i package.deb; sudo apt-get -f install; sudo dpkg -i package.deb
. La premièredpkg -i
exécution marque les dépendances,apt-get -f install
installe les dépendances requises et la secondedpkg -i
installe avec succès le paquet. Notez queapt-get install -f
c'est une commande totalement différente.dpkg -i --force
; cela forcera-installer un paquet cassé! Courirdpkg
/ sans /--force
fera l’entrée nécessaire dans la base de données de paquets pour queapt-get -f install
cela fasse la bonne chose.Vous pouvez installer
gdebi-core
, qui est la version en ligne de commande du programme d'installation du package GDebi à partir de 10.04 et antérieure. Dans les versions plus récentes d'Ubuntu, le Centre de logiciel est utilisé pour installer debs, qui n'a pas d'équivalent en ligne de commande.Pour installer un paquet deb en utilisant gdebi, lancez simplement:
la source
à partir de apt 1.1 (disponible dans Xenial (16.04), stretch)
apt install
autorise également les fichiers locaux:Tellement plus simple et plus propre.
Voir l' annonce de sortie
la source
apt ./install foo-1.2.3.deb
fonctionné../
chemin ou le chemin nécessaireGdebi
gdebi
installe un paquet deb et ses dépendances. Pour l'utiliser, lancez:Dans les versions plus récentes d'Ubuntu, ce n'est pas installé par défaut, vous devrez donc l'installer à partir des référentiels.
Voir
man gdebi
pour une liste complète des options.gdebi
est l'équivalent en ligne de commande de l'outil graphique du même nom qui était inclus par défaut dans Ubuntu. La commande de l'outil graphique estgdebi-gtk
et a une fonctionnalité similaire:la source
dpkg-repack
dessus en nous basant sur cette liste de dépots :)fonctionnement
après l’installation du paquet avec dpkg peut résoudre les problèmes de dépendance (au moins man apt-get say so ...). Ill mise à jour quand je vais le vérifier.
la source
sudo dpkg -i mypackage.deb
nouveau?apt-get -f install
fonctionne, maisapt-get install -f
n'est pas la même chose.dpkg ne prend pas en charge les dépendances. Il existe un moyen de contourner le problème, mais cela nécessiterait de créer une base de données locale (et donc de connaître déjà les dépendances), ce qui est considéré comme obsolète (...).
Doit-il être en ligne de commande? (installation du serveur?) Si tel est le cas, jetez également un coup d'oeil,
apt-get -f
mais soyez prudent: si vous résolvez des dépendances après l'installation, votre système risque d'être endommagé.gdebi (interface graphique ) était capable de le faire, mais a été remplacé par USC.
Comment avez-vous téléchargé le .deb. Certaines des nouvelles fonctionnalités de la version 11.04 concernent le traitement du fichier .deb téléchargé depuis un site Web: il est ouvert dans USC et les dépendances sont résolues par l’installateur.
EDIT basé sur le commentaire de andrew:
sudo gdebi foo-1.2.3.deb
ferait l'affaire!la source
À la place,
gdebi-gtk
vous pouvez utiliser Ubuntu Software Center.Double-cliquez sur le paquet et un bouton d'installation devrait être disponible.
la source
Vous pouvez créer un fichier
dpkg-dep-inst
avec le contenu suivant.Je suppose que vous avez créé le fichier dans votre dossier personnel. Faites - exécutable
chmod +x dpkg-dep-inst
et le déplacer vers/usr/local/bin
avecsudo cp dpkg-dep-inst /usr/local/bin
.Vous pouvez maintenant installer le paquet Debian avec ses dépendances automatiquement avec:
la source
apt-get --yes --fix-broken install
et rendre la fixation automatique.Je viens de rencontrer ce problème. Appel
apt-get install -f
sera pas installer recommandées dépendances, bien! La seule solution possible serait de créer un référentiel local et d’ajouter à/etc/apt/sources.list
, c’est- à -dire:la source
En réalité, la réponse est que le
dpkg
gestionnaire de paquets ne peut pas installer de dépendances prêtes à l'emploi. Vous camman dpkg
et découvert que. Vous avez donc besoin d'utiliser des outils commeapt
,apt-get
,aptitude
, ..., sur la basedpkg
.Je dirais que le même cas
rpm
s’applique au gestionnaire de paquets de l’autre hémisphère Linux.rmp
n'est pas destiné à faire des installations basées sur la dépendance. Il peut installer des paquets simples, et pour installer les dépendances que vous utilisezyum
,urpmi
,up2date
ceux - ci sont tous basés sur RPM.Comme indiqué
dpkg
précédemment, il existe un léger danger lors de l’installation directe de packages , car la résolution ultérieure de la dépendance peut aboutir à un système défectueux, comme indiqué par @Rinzwind.la source