Frage Wie installiere ich gcc-4.3?


Gibt es einen einfachen Weg gcc-4.3 auf Oneiric zu installieren? Ich brauche es wirklich, weil Matlab für die Erstellung von Mex-Dateien von mir abhängt

Ich habe versucht, alle meine Resopistories zurück zu Maverick zu ändern, nur um gcc-4.3 zu installieren, aber ich bekomme diesen Fehler:

refl_v0p8_linux_and_windows % sudo apt-get install gcc-4.3-multilib libstdc++6-4.3-        dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 gcc-4.3-multilib : Depends: gcc-4.3 (= 4.3.5-3ubuntu1) but it is not going to be     installed
                Depends: libc6-dev-i386 (>= 2.5) but it is not going to be installed
 libstdc++6-4.3-dev : Depends: g++-4.3 (= 4.3.5-3ubuntu1) but it is not going to be         installed
    E: Broken packages

5
2017-11-03 05:08


Ursprung


versuchen Sie sudo apt-get install gcc .... fügen Sie keine multilib ... der sind einige Abhängigkeitsprobleme .. - Vineet Menon
Hinweis: Es ist nicht empfohlen Üben Sie die Neukompilierung von Software mit einer gcc-Version, die nicht der ist, für die der Code entwickelt und getestet wurde. Einige Instanzen (Code mit MATLAB für '.mex' Dateien, OLDER-Treibercode, Cross-Compiler usw.) können zu subtilen Fehlern führen. - david6
Auch aufgewachsen als: ubuntuforums.org/showpost.php?p=11375235&postcount=1  immer noch ungelöst - david6


Antworten:


Es gibt definitiv keine Notwendigkeit, gcc-4.3 zu verwenden. Natürlich erhalten Sie immer die Warnmeldung während der Erstellung von mex-Dateien:

Warnung: Sie verwenden gcc Version "4.6.x.x)". Die aktuell mit MEX unterstützte Version ist "4.3.4". Eine Liste der aktuell unterstützten Compiler finden Sie unter: http://www.mathworks.com/support/compilers/current_release/

aber das ist eine Warnung - die MEX-Funktion wird noch kompilieren !!!

Das einzige, was geändert werden muss, ist ein neuer Link in der Bibliothek libc.so.6: (sehen http://morganbye.net/blog/2011/10/matlab-ubuntu-1110)

Also für 64 Bit: Entfernen Sie den alten Link

sudo rm /lib64/libc.so.6

(Seien Sie vorsichtig, wenn Sie den alten Link entfernen. Es ist wichtig, dass Linux bootet. Wenn Sie also einen Neustart durchführen, bevor Sie den Link durch die neue Version ersetzen, ist es Zeit, eine Live-Festplatte auszugraben. Wenn Sie paranoid sind, können Sie Kopieren Sie "cp" libc.so.6 in etwas wie libc.so.6.backup zuerst.)

Ersetzen durch neuen Link

sudo ln -s /lib/x86_64-linux-gnu/libc-2.13.so /lib64/libc.so.6

Für 32 Bit: (Ich habe das nicht getestet, da ich nur x64-Systeme verwende, aber aus den Kommentaren sollte es meiner Meinung nach funktionieren)

Entfernen Sie den alten Link (seien Sie vorsichtig mit diesem Befehl)

sudo rm /lib32/libc.so.6

Ersetzen durch neuen Link

sudo ln -s /lib/i386-linux-gnu/libc-2.13.so /lib/libc.so.6

Natürlich, wenn dies eine frische Ubuntu-Installation ist, dann brauchen Sie wahrscheinlich nicht den Befehl rm (remove).


1
2017-12-10 17:53





1) Bearbeiten Sie die Datei sources.list:

sudo gedit /etc/apt/sources.list

füge diese Zeile hinzu:

deb http://mirror.pnl.gov/ubuntu/ hardy-updates main universe

Eine vollständige Liste der Mirror-Sites finden Sie hier

Speichern und schließen Sie die Datei

2) Loggen Sie sich aus dem Login aus

3) Öffnen Sie Synaptic. Wenn du das nicht siehst mirror.pnl.gov/ubuntu/ hardy-updates main universe Klicken Sie in der Quellenliste links auf Neu laden.

4) Wählen Sie mirror.pnl.gov/ubuntu/ hardy-updates main universe von links Spalte - Dies sollte die Liste der Pakete anzeigen.

5) Wählen Sie g77 aus der Liste, markieren Sie es für die Installation und übernehmen Sie es. g77 ist jetzt installiert und kann verwendet werden.


1
2018-04-01 20:24





Sie haben Abhängigkeiten unterbrochen. Sie können sie "reparieren"

sudo apt-get -f install

Aber bevor Sie Ja sagen, schauen Sie bitte, was Apt versucht zu deinstallieren.

Und als Hinweis: Es ist keine gute Idee, die Ubuntu-Version herunterzustufen, nur um eine andere Version von gcc zu bekommen. Sie können mehrere Versionen von gcc auf einer Maschine haben! Ich würde wieder zu der Version gehen, die Sie vor Ihrem gescheiterten Versuch hatten, herunterzustufen und die gcc-Version zu behalten, die Sie vorher hatten. Dann hol dir den Tar-Ball von gcc 4.3 und kompiliere es selbst, es ist nicht schwer. Danach haben Sie zwei gcc-Versionen, dann können Sie Matlab auf die andere Version verweisen (geben Sie den gcc-Pfad irgendwo in Matlab an).

Es würde Ihnen nicht empfehlen, andere Software mit einer gcc-Version zu kompilieren, die anders ist als diejenige, die standardmäßig in ubuntu installiert wurde.


0
2017-11-03 07:38



Ich habe versucht, es zu kompilieren, aber es ist nicht so einfach. Würde es Ihnen etwas ausmachen, mir dabei zu helfen? - Martin Hansen
normalerweise rufen Sie zuerst "./configure" auf - dann sehen Sie irgendwo eine Warnmeldung oder etw. wie "fehlendes foo". Dann musst du nach foo suchen und es installieren. Normalerweise sollten Sie foo als Paket in ubuntu finden. Nachdem Sie alle abhängigen Pakete installiert haben, sollte Ihr Konfigurationsskript durchgehen und dann sollte die Kompilierung funktionieren. - Michael K


Mögliche Abhilfe: (Fix für MATLABnicht GCC-4.3)

von: http://xcorr.net/2010/05/07/getting-gcc-to-works-with-matlab-r2009b-on-linux-ubuntu-karmic-to-compile-mex-files/

(Zusammenfassend)


0
2017-12-03 05:03





Ich weiß, dass diese Frage zwei Jahre alt ist, aber ich mag es nicht, Fragen zu sehen, die niemals eine akzeptierte Antwort bekommen, also versuche ich zu helfen.

Dies verwendet nicht den Paketmanager, sondern um http://gcc-uk.internet.bs/releases/ Sie können fast jede Version von GCC finden. Version 4.3.0 (und wahrscheinlich alle anderen) enthalten HTML-Installationsanweisungen. Wenn Sie britische Server nicht mögen, gibt es eine Liste von Spiegeln auf der GCC-Website; Einige von ihnen mögen alte Versionen wie diese haben.

Ich muss Michal Kvasnicka widersprechen, du solltest immer die angegebene Version von GCC verwenden.


0
2018-06-17 15:27