Suite

Erreur de ligne de commande et dépendance manquante dans QGIS


J'ai deux problèmes avec QGIS 2.6.1

1) Lorsque j'essaie d'ouvrir la ligne de commande, j'obtiens une erreur :

Une erreur s'est produite lors de l'exécution du code Python :

Traceback (appel le plus récent en dernier) : Fichier "C:/OSGEO4~1/apps/qgis/./python/pluginsprocessingProcessingPlugin.py", ligne 134, dans openCommander self.iface.mapCanvas()) Fichier "C :/OSGEO4~1/apps/qgis/./python/pluginsprocessingguiCommanderWindow.py", ligne 48, dans init self.commands = imp.load_source('commands', self.commandsFile()) UnicodeEncodeError : le codec 'ascii' ne peut pas encoder le caractère u'xf3' en position 17 : l'ordinal n'est pas dans la plage (128)

2) Lorsque j'essaie d'exécuter l'algorithme externe SAGA, GRASS quel que soit le message que je reçois :

Dépendance manquante.Cet algorithme ne peut pas être exécuté :-( Cet algorithme nécessite l'exécution de SAGA.Malheureusement, il semble que SAGA ne soit pas installé sur votre système ou qu'il ne soit pas correctement configuré pour être utilisé à partir de QGIS Cliquez ici pour en savoir plus sur la façon dont pour installer et configurer SAGA à utiliser avec QGIS


Merci pour l'aide. J'ai trouvé la solution. Le problème était dans le compte d'utilisateur Windows avec des caractères polonais. J'ai changé d'utilisateur et tout va bien maintenant.


Comment récupérer automatiquement les dépendances manquantes lors de l'installation d'un logiciel à partir de .deb ? [dupliquer]

J'essaie d'installer MySQL Workbench sur ma boîte Ubuntu (11.04). Le site Web a un Ubuntu .deb disponible en téléchargement (pour 10.10 et 10.04 donc j'ai choisi 10.10).

Ma question est, y a-t-il un moyen de dire à dpkg de récupérer automatiquement les dépendances manquantes, ou dois-je installer manuellement apt-get les packages manquants tels que libctemplate0 et libpython2.6?

(Ou alternativement, existe-t-il un autre moyen de faire fonctionner MySQL Workbench facilement ?)


3 réponses 3

Selon le manuel d'apt, vous pouvez le faire soit en exécutant l'une des commandes suivantes :

sudo apt-get install <package-name>=<package-version-number> OU

J'ai lutté avec la même situation et j'ai trouvé une solution qui a fonctionné pour moi.

Dans mon cas, je dois basculer entre les versions de psql-dev (postgresql), je dois donc d'abord ajouter le référentiel postgresql apt et chacune des versions disponibles à installer pour ma distribution :

Avec cela seul, vous ne pourrez pas passer de la version 11* à la 9.6* en raison de l'erreur que vous avez rencontrée. L'astuce est expliquée dans cet article :

Après avoir épinglé la version avec une priorité de 1001 ou supérieure, il installera les dépendances de cette version, dans ce cas toutes les dépendances correspondant à la version 9.6* .


2 réponses 2

  1. Je n'aime pas le nom AutoBuildCommandLineHelper pour une classe qui implémente une interface comme IAutoBuildCommandLineArgs . Je l'aurais nommé AutoBuildCommandLineArgs
  2. Vous avez fait ParamSpecifier une constante nommée mais pas les guillemets que vous supprimez de la valeur du paramètre.

Bugs possibles

  1. Si je lis correctement IsSpecified(), il accepte les arguments commençant par Name . Étant donné que Name semble être l'abréviation à une lettre, cela signifie que si je spécifie un argument invalide qui commence par une lettre d'un argument valide, IsSpecified() retournera true.
  2. Si vous appelez ParameterValue() sur un argument qui n'a pas (c'est-à-dire ne nécessite pas) de paramètre, il lancera une exception IndexOutOfRangeException car les valeurs n'auront qu'une entrée

Lorsque vous souhaitez ajouter une nouvelle option de ligne de commande, vous devez faire 5 ou 6 choses :

  1. Ajouter une nouvelle classe représentant la nouvelle option
  2. Enregistrez cette classe avec le conteneur IoC (cela pourrait éventuellement se produire automatiquement en fonction du conteneur utilisé)
  3. Ajouter une nouvelle propriété à IAutoBuildCommandLineArgs
  4. Ajouter une nouvelle propriété à AutoBuildCommandLineHelper
  5. Ajouter une nouvelle propriété au constructeur AutoBuildCommandLineHelper
  6. Ajouter une nouvelle affectation dans le constructeur AutoBuildCommandLineHelper pour copier le paramètre dans la propriété

Semble un peu impliqué. J'ai piraté une version alternative qui devrait s'adapter parfaitement à DI :

Lorsque vous souhaitez ajouter une nouvelle option, vous devez faire 2 choses :

Du point de vue DI, tout ce qui a besoin d'accéder aux options dépend simplement de ICommandLineOptions .

Si vous voulez être vraiment fantaisiste, vous pouvez rendre CommandLineOption public, lui ajouter une interface ICommandLineOption et faire en sorte que CommandLineOptions dépende d'une collection de ICommandLineOption s. Ensuite, vous pouvez enregistrer toutes les options que vous souhaitez prendre en charge dans le conteneur plutôt que de les coder en dur dans CommandLineOptions .


1 réponse 1

Je dois remercier la réponse trouvée ici qui m'adressait à la solution publiée ici par l'utilisateur garts (faites défiler la page vers le bas)

Il s'agit certainement d'un problème lié à des erreurs de disque dur et/ou à des secteurs défectueux. En fait, en inspectant le répertoire /var/lib/dpkg/status/info (contenant la liste des fichiers pour chaque paquet installé), j'ai trouvé deux fichiers contenant des caractères illisibles même s'il s'agissait de simples fichiers texte.

La chronologie de ce que j'ai fait :

exécuter fdisk pour vérifier/réparer les erreurs

  • redémarrer Ubuntu à partir du live CD
  • exécuter la ligne de commande du terminal
  • obtenu la liste des disques en lançant la commande sudo fdisk -l
  • exécutez la vérification du disque sur toutes les partitions à l'exception du démarrage : fsck /dev/sdaX
    (Dans mon cas X = 2 ou 5 ou 6)
  • répondu "Oui" à toutes les corrections proposées par fsck.
  • éteignez le PC et redémarrez normalement (c'est-à-dire sans le live CD)

a ouvert le statut fichier utilisé par dkpg avec gedit comme superutilisateur : gksudo gedit /var/lib/dpkg/status


3 réponses 3

Comme d'autres l'ont déjà noté, assurez-vous que pour chaque entrée deb… dans /etc/apt/sources.list et /etc/apt/sources.list.d/* , vous avez une entrée deb-src… correspondante. Le reste de la ligne doit être identique.

L'entrée deb est pour les packages binaires (c'est-à-dire prêts à installer), le deb-src est pour les packages source (c'est-à-dire prêts à compiler). La raison pour laquelle les deux types de packages sont séparés est qu'ils sont gérés de manière très différente : les packages binaires ont un mécanisme de suivi des dépendances et une liste actuellement installée, tandis que les packages source ne sont suivis que pour pouvoir être téléchargés facilement. Notez que lors de la discussion sur les référentiels de packages, le mot la source signifie deux choses sans rapport : une source comme dans un emplacement à partir duquel télécharger les packages et un package source par opposition à un package binaire.

libgtk2.0-0 est le nom d'un paquet binaire. Il est construit à partir d'un paquet source appelé gtk+2.0 . La raison pour laquelle les noms des packages source et binaire ne correspondent pas toujours est que la construction d'un package source peut produire plusieurs packages binaires, par exemple, gtk+2.0 est la source de 14 packages car il est divisé en deux bibliothèques ( libgtk2.0 , libgail ), packages correspondants pour construire des programmes utilisant ces bibliothèques ( …-dev ), documentation pour les développeurs ( …-doc ), programmes compagnons ( libgtk2.0-bin ), etc.

Vous pouvez voir le nom du package source correspondant à un package binaire en vérifiant la ligne Source: … dans la sortie de dpkg -s BINARY_PACKAGE_NAME (si le package est installé) ou apt-cache show BINARY_PACKAGE_NAME .

Vous pouvez lister les paquets binaires produits par un paquet source avec aptitude search '?source-package(^SOURCE_PACKAGE_NAME$) .

La commande apt-get source télécharge un package source. Si vous lui donnez un argument qui n'est pas un package source connu, il le recherche dans la base de données des packages binaires installables et essaie de télécharger le package source correspondant.

La commande apt-get build-dep suit la même approche pour déduire le nom d'un package source, puis interroge la base de données du package source pour obtenir une liste de packages binaires (la liste dans le champ Build-Dep:), et installe ces binaires paquets.

L'interface graphique des sources de logiciels a une case à cocher "activer les référentiels avec le code source" pour les référentiels officiels, assurez-vous qu'elle est cochée. Si vous ajoutez manuellement des référentiels tiers, assurez-vous d'ajouter à la fois les lignes deb-src et deb.


Exécuter le vérificateur de fichiers système sous Windows 10

Suivez les instructions ci-dessous pour exécuter l'outil Vérificateur de fichiers système dans Windows 10.

Étape 1: Ouvrez l'invite de commande en tant qu'administrateur. Vous pouvez le faire en tapant CMD dans le champ de recherche Démarrer/barre des tâches, en cliquant avec le bouton droit sur l'entrée d'invite de commande, puis en cliquant sur Exécuter en tant qu'administrateur option.

Cliquez sur Oui lorsque vous obtenez l'invite Contrôle de compte d'utilisateur.

Étape 2: Dans la fenêtre d'invite de commandes, vous devez d'abord exécuter l'outil DISM suivant avant d'exécuter l'outil Vérificateur des fichiers système.

DISM.exe /En ligne /Cleanup-image /Restorehealth

La commande ci-dessus utilise Windows Update pour télécharger les fichiers requis pour corriger les corruptions de fichiers.

Si vous avez désactivé Windows Update ou que Windows Update ne fonctionne pas pour une raison quelconque, veuillez connecter le support de démarrage Windows 10 à votre PC, puis exécutez la commande suivante au lieu de celle ci-dessus. Si vous n'avez pas le support de démarrage, téléchargez la dernière version ISO de Windows 10 auprès de Microsoft, montez le fichier ISO, puis exécutez la commande suivante.

DISM.exe /Online /Cleanup-Image /RestoreHealth /Source:C:RepairSourceWindows /LimitAccess

Dans la commande ci-dessus, remplacez "C:RepairSourceWindows" par l'emplacement de la source de ressource.

Étape 3: Ensuite, tapez la commande suivante, puis appuyez sur la touche Entrée.

sfc/scannow

La commande ci-dessus analyse tous les fichiers système protégés et remplace les fichiers corrompus par une copie en cache du fichier présent dans un dossier compressé situé dans System32dllcache.

Le traitement de la commande ci-dessus peut prendre un certain temps. Alors, soyez patient.

Étape 4: Une fois que le vérificateur de fichiers système a terminé son travail, vous verrez l'un des messages suivants :

# La protection des ressources Windows n'a trouvé aucune violation d'intégrité

Le message ci-dessus indique qu'il n'y a pas de fichiers système manquants ou corrompus sur votre PC.

# La protection des ressources Windows n'a pas pu effectuer l'opération demandée

Si vous obtenez ce message, vous devrez peut-être exécuter à nouveau le vérificateur de fichiers système en mode sans échec. Nous vous recommandons d'exécuter à nouveau le Vérificateur des fichiers système en mode normal avant d'essayer en mode sans échec.

# La protection des ressources Windows a trouvé des fichiers corrompus et les a réparés avec succès.

Vous obtiendrez le message ci-dessus lorsque le vérificateur de fichiers système a détecté des fichiers corrompus ou manquants et a réussi à les réparer sans aucun problème.

# La protection des ressources Windows a trouvé des fichiers corrompus mais n'a pas pu en réparer certains.


Comment installer un fichier .deb via la ligne de commande ?

Les forfaits sont manuellement installé via le dpkg (Système de gestion de paquets Debian). dpkg est le backend de commandes telles que apt-get et aptitude , qui à leur tour sont le backend des applications d'installation d'interface graphique telles que Software Center et Synaptic.

Quelque chose du genre :

dpkg --> apt-get , aptitude --> Synaptic, Software Center

Mais bien sûr, les moyens les plus simples d'installer un paquet seraient, d'abord, les applications GUI (Synaptic, Software Center, etc.), suivies des commandes de terminal apt-get et aptitude qui ajoutent une très belle approche conviviale au backend. dpkg, y compris, mais sans s'y limiter, les dépendances empaquetées, le contrôle de ce qui est installé, doit être mis à jour, les packages non installés, cassés, etc. Enfin, la commande dpkg qui est la base de tous.

Puisque dpkg est la base, vous pouvez l'utiliser pour installer le package directement à partir de la ligne de commande.

Installer un paquet

Par exemple, si le fichier du package s'appelle askubuntu_2.0.deb, vous devez alors faire sudo dpkg -i askubuntu_2.0.deb . Si dpkg signale une erreur due à des problèmes de dépendances, vous pouvez exécuter sudo apt-get install -f pour télécharger les dépendances manquantes et tout configurer. Si cela signale une erreur, vous devrez trier les dépendances vous-même en suivant par exemple Comment résoudre les dépendances non satisfaites après l'ajout d'un PPA ?.

Supprimer un paquet

Par exemple, si le package s'appelle askubuntu, vous devez faire sudo dpkg -r askubuntu .

Reconfigurer un package existant

Ceci est utile lorsque vous devez reconfigurer quelque chose en rapport avec ledit package. Quelques exemples utiles concernant la configuration du clavier lorsque vous souhaitez activer Ctrl + Alt + Backspace afin de réinitialiser le serveur X, vous devez donc procéder comme suit :

Un autre excellent est lorsque vous devez définir le fuseau horaire pour un serveur ou votre ordinateur de test local, vous utilisez donc le package tzdata :


Vous installez un package centos 4 sur ce qui n'est probablement pas une machine centos 4. Obtenez une version du package wine qui correspond à votre système d'exploitation.

Et si votre système d'exploitation est vraiment centos 4: il est temps de mettre à niveau, centos 4 ne reçoit même plus de correctifs de sécurité.

Vous mélangez plusieurs référentiels tiers. Vous devez configurer le plug-in de priorités yum. En particulier, EPEL est connu pour provoquer des conflits avec d'autres repos tiers.

Veuillez lire et suivre les instructions dans :

Parce que vous avez besoin de vin et que le vin est disponible à la fois à partir de rpmforge et d'EPEL, je vous suggère d'activer un seul d'entre eux, pas les deux.

Pour que le statut du dépôt reste aussi simple que possible, utilisez rpmforge OU EPEL comme seul dépôt tiers pour le moment. Supprimer ou supprimer d'autres. Ensuite, essayez d'installer wine.

La solution la plus simple consiste à supprimer RPMforge par la commande suivante ( check by rpm -qa | grep rpmforge ):


Articles Similaires

38 réflexions sur &ldquo10 commandes utiles pour collecter des informations sur le système et le matériel sous Linux&rdquo

Existe-t-il un outil qui peut inventorier les ports série et signaler les fonctionnalités prises en charge pour chaque port ? Par exemple, le port prend-il en charge une/toutes les lignes de contrôle ou seulement la transmission/réception ? Le port a-t-il des limitations de vitesse spécifiques ? etc.

S'il vous plaît, pouvez-vous me conseiller un utilitaire ou des outils dans RHEL équivalents à l'outil d'exploration (dans Oracle Solaris) pour collecter des informations complètes sur le système afin d'analyser .

Puis-je utiliser ces commandes pour vérifier le serveur ou d'autres ordinateurs à distance ??

Oui, vous pouvez utiliser toutes ces commandes sur un serveur Linux distant via un SSH.

Comment pouvons-nous obtenir des informations relatives aux composants du noyau sous Linux ? Quelles sont les commandes ?


Voir la vidéo: QGIS: Georeferencing raster data without coordinates (Octobre 2021).