2014-10-25 3 views
8

Ich habe vor kurzem nur auf meinem Mac auf OSX Yosemite aktualisiert und während ich nicht sicher bin, ob dies die Ursache ist, scheint es plötzlich verdächtig Alle meine C++ - Programme werfen einen Segmentierungsfehler.Mac OSX - Getting Segmentation Faults auf jedem C++ Programm (auch Hallo Welt) nach Yosemite Update

Ich habe sogar versucht, die Basis aller grundlegenden "Hello World" -Programme und ich bekomme immer noch eine Segmentation Fault. Buchstäblich macht jedes einzelne C++ Programm dasselbe.

#include <iostream> 

using namespace std; 

int main() 
{ 
    cout << "Hello World" << endl; 
} 

Ich habe die Xcode-Updates installiert, um zu sehen, ob das die Situation verbessern würde, aber kein Glück. Ich bin neugierig, hat jemand anderes das gleiche Problem? Unabhängig von Yosemite, hatten Sie dieses Problem, wo Ihr Mac Segmentierung Fehler für alles wirft?

Ich sollte hinzufügen, ich bin mit g ++ kompiliert

+0

Bei welcher Zeile wirft es den Fehler? können Sie die Ausgabe von 'strace' posten – g4ur4v

+0

Versuchen Sie, Ihre C++ - Compiler-Suite neu zu installieren (Clang oder GCC) –

+0

@ g4ur4v Es tut mir leid, dass ich Strace nicht kenne. Ich habe versucht, die seg-Störungslinie über gdb zu bestimmen, aber ich kann nichts über "Segmentation Fault: 11" erhalten. Ich werde versuchen, den C++ - Compiler –

Antwort

11

Nach einigen weiteren Versuchen ich eine Abhilfe von hier gefunden haben:

http://lists.gnu.org/archive/html/libtool-patches/2014-09/msg00002.html

einfach

setenv MACOSX_DEPLOYMENT_TARGET 10.9 

oder

export MACOSX_DEPLOYMENT_TARGET=10.9 

Happily arbeitet danach. Allerdings sollten von Libtool entsprechende Fehler behoben werden. Beobachten Sie den Fortschritt dort.

+0

Willkommen auf der Seite! [Bitte verwenden Sie ausschließlich Antworten, um die Frage zu beantworten.] (Http://meta.stackoverflow.com/q/92107) Wenn Sie eine andere Frage haben, fragen Sie sie bitte an, indem Sie oben auf die Schaltfläche ["Frage stellen" klicken Seite] (http://stackoverflow.com/questions/ask). Wenn Sie genau das gleiche Problem haben wie dieses, können Sie, wenn Sie genügend Reputation haben, [die Frage aufwerfen] (http://stackoverflow.com/help/privileges/vote-up) oder [add a bounty] (http : //stackoverflow.com/help/bounty) darauf. Sie können die Frage auch als Favorit markieren. In diesem Fall werden Sie vom System auf neue Antworten hingewiesen. –

+1

Danke für Ihre Lösung! Das ist eigentlich ziemlich nervig und betrifft so viel. – Anas

+1

Dies ist nur um im August 2015 zu kommentieren, dass ich immer noch das gleiche Problem in OSX 10.10 hatte.4 mit gfortran, das Segmentierungsfehler (sogar auf gfortran - Version) wirft. Mit dem zweiten Exportbefehl in diesem Post wurde das Problem behoben. Ich denke, ein Teil des Problems ist, dass libtool aus einer alten Version von XCode stammt (siehe [hier] (http://www.jattcode.com/installing-autoconf-automoma-libtool-on-mac-osx-mountain-lion/)). Ich habe versucht, Libtools von MacPorts zu installieren, aber es scheint an einem anderen Ort unter Glibtools zu installieren. – TSGM

0

Meine g ++ Version ist (MacPorts gcc47 4.7.4_5 + universal) 4.7.4

Ich lief sudo port selfupdate gefolgt von sudo port upgrade outdated

Das ist für mich gearbeitet

auch können Sie launchctl setenv MACOSX_DEPLOYMENT_TARGET 10.9 laufen zu machen permanent.