2010-11-12 6 views
1

1) J'ai besoin gcc-4.1 pour Matlab utilisation de MEX, mais je ne peux pas le faire installer pleinement avec apt-get install:Comment installer gcc-4.1 sur Ubuntu 10.10

The following packages have unmet dependencies: 
libstdc++6-4.1-dev : Depends: gcc-4.1-base (= 4.1.2-27ubuntu1) but 4.1.2-29ubuntu1 is to be installed 
Depends: g++-4.1 (= 4.1.2-27ubuntu1) but it is not going to be installed 
E: Broken packages 

2) Je maintenant seules les bases gcc-4.1 et -multilib sont installées. Lors de la compilation fichier MEX:

/usr/bin/ld: cannot find -lstdc++ 
collect2: ld returned 1 exit status 

Quelque chose ne va pas avec libstdC++ 6-4.1-dev. Donc, une solution plus facile que la compilation par moi-même?

Merci

+0

Cela pourrait obtenir des réponses plus et mieux à super-utilisateur. – vpit3833

+0

Non. Essayez askbuntu. –

Répondre

0

Je ne le compilerais pas moi-même. Je me souviens de combien de temps prend (c'est l'une des parties les plus longues de la construction de tout système Linux) ...

Donc je suppose que vous n'avez pas un GCC complètement fonctionnel maintenant? Je l'ai eu à installer à partir d'apt-get dans Ubuntu 10.10 x64 ...

D'accord, vous avez donc des dépendances cassées, hein? Je sais que ce n'est pas élégant, mais essayez de télécharger les fichiers deb manuellement (http://packages.ubuntu.com/maverick/gcc-4.1pour 10,10 ou http://packages.ubuntu.com/lucid/gcc-4.1pour 10,04), les enregistrer dans un dossier, cd dans le dossier du Terminal et exécuter cette opération pour chaque paquet:

dpkg -i package.deb 

il y a une plus élégante façon de le faire, mais je ne sais pas ...

+0

Merci Blender3D :) Mais que faire si je ne peux pas insaller libstdC++ 6-4.1-dev_4.1.2-27ubuntu1_i386.deb ... "La dépendance n'est pas satisfiable: g ++ - 4.1 (= 4.1.2-21ubuntu1)" – Eminemya

+0

Je l'appelle déplacement manuel de l'arbre de dépendance;) Installez ce paquet en premier (g ++ - 4.1). C'est une douleur, mais c'est ce qui arrive quand vous avez besoin d'une ancienne version ... Aussi, avez-vous * vraiment * besoin de cette version de GCC? Le code pourrait fonctionner avec celui en cours ... – Blender

2

Je suppose que vous utilisez la version 64 bits Ubuntu et votre version Matlab est également 64bit. Il y a deux façons qui peuvent résoudre votre problème mentionné dans 2):

  1. mexopts.sh Ouvert (situé dans yourhome/.matlab/VERSION MATLAB®/répertoire), et commenter clibs = "clibs -lstdC++" pour glnxa64 .
  2. Vérifiez si libstdC++. So. existe dans le répertoire/usr/lib. Sinon, créez un lien symbolique /usr/lib/libstdc++.so vers MATLABROOT/sys/os/glnxa64/libstdC++. So.6.0.xx (xx est un nombre qui peut changer avec la version matlab).
Questions connexes