web-dev-qa-db-fra.com

atlas lib symlink coincé dans l'impasse maître-esclave

après quelques cycles d'installation et de suppression, en essayant de faire en sorte qu'Atlas et OpenBLAS soient amis, j'ai cette erreur de mise à jour des alternatives, qui je pense est vraiment un blocage maître-esclave, c'est-à-dire. un lien symbolique devrait être un esclave mais est en fait un maître. Veuillez indiquer comment résoudre ce problème.

Mon réglage: ubuntu 12.04

Sudo apt-get -f install

Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up libatlas3gf-base (3.8.4-3build1) ...
update-alternatives: error: alternative libatlas.so.3gf can't be slave of libblas.so.3gf:     it is a master alternative.
dpkg: error processing libatlas3gf-base (--configure):
 subprocess installed post-installation script returned error exit status 2
Errors were encountered while processing:
 libatlas3gf-base
E: Sub-process /usr/bin/dpkg returned an error code (1)

Sudo dpkg --configure -a

Setting up libatlas3gf-base (3.8.4-3build1) ...
update-alternatives: error: alternative libatlas.so.3gf can't be slave of libblas.so.3gf: it is a master alternative.
dpkg: error processing libatlas3gf-base (--configure):
 subprocess installed post-installation script returned error exit status 2
Errors were encountered while processing:
 libatlas3gf-base

ÉDITER :

$ update-alternatives --query libblas.so.3gf
update-alternatives: error: no alternatives for libblas.so.3gf.


$ update-alternatives --query libatlas.so.3gf
Link: libatlas.so.3gf
Status: auto
Best: /usr/local/lib/libopenblas.so
Value: none

Alternative: /usr/local/lib/libopenblas.so
Priority: 50
2
horaceT

J'ai corrigé mon propre blocage maître-esclave, et voici la ligne magique,

Sudo dpkg --remove --force-remove-reinstreq libatlas3gf-base

après cela, j'ai émis 'Sudo apt-get -f install', plus aucune plainte n'a été vue.

Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

REMARQUE: dans un article séparé ( http://ubuntuforums.org/showthread.php?t=947124 ) quelqu'un a suggéré

"Sudo dpkg --remove -force --force-remove-reinstreq package name"

La "force" n'est vraiment pas nécessaire.

1
horaceT

Je n'ai pas pu obtenir la réponse d'HoraceT au travail. Au lieu de cela, j'ai émis les commandes suivantes, qui se sont plaintes mais ont arrêté le apt-get install échouer.

Sudo update-alternatives --config liblapack.so.3gf
Sudo update-alternatives --config libblas.so.3gf
0
Tom Ellis

Juste pour la mémoire: dans cette réponse il est suggéré de faire

Sudo update-alternatives --remove-all liblapack.so.3gf
Sudo apt-get install -f

ce qui a aidé dans mon cas.

0
v_2e