2014-10-25 9 views
8

Son zamanlarda Mac'imde sadece OSX Yosemite sürümüne geçtim ve bunun nedeni olup olmadığından emin değilim, aniden şüpheli görünüyor Tüm C++ Programlarım Segmentasyon Hatası veriyor.Mac OSX - Yosemite Güncellemesinden sonra her C++ Programında (Hatta Hello World) Segmentasyon Hataları Başlıyor

Tüm temel "Hello World" programlarının temelini denedim ve hala bir Segmentasyon Hatası alıyorum. Tam anlamıyla, her bir C++ programı aynı şeyi yapar.

#include <iostream> 

using namespace std; 

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

Ben bu durumu ama hiç şans çare olacağını görmek için Xcode güncelleştirmeleri yüklü. Merak ediyorum, aynı sorun yaşayan başka biri var mı? Yosemite'den bağımsız olarak, Mac'iniz için Segmentasyon hatası atarken bu sorunu yaşadınız mı?

Ben buradan bir geçici çözüm bulduk birkaç denemeden sonra g ++

+0

Hangi satırda hatayı atar? 'strace' – g4ur4v

+0

çıktısını gönderebilirsin C++ derleyici paketini (Clang veya GCC) yeniden yüklemeyi deneyin. –

+0

@ g4ur4v Üzgünüm strace ile aşina değilim. Gdb aracılığıyla seg hata satırını belirlemeye çalıştım, ancak "Segmentation Fault: 11" den geçmiş bir şey alamıyorum. Ben C++ derleyici –

cevap

11

ile derleme, eklemek gerekir:

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

Basitçe

setenv MACOSX_DEPLOYMENT_TARGET 10.9 

veya

export MACOSX_DEPLOYMENT_TARGET=10.9 

Bundan sonra mutlu çalışır. Bununla birlikte, libtool'den uygun hata düzeltmeleri yapılmalıdır, bu yüzden oradaki ilerlemeyi izleyin.

+0

Siteye hoş geldiniz! [Lütfen soruyu cevaplamak için yalnızca Özel Cevapları kullanın.] (Http://meta.stackoverflow.com/q/92107) Farklı bir sorunuz varsa, lütfen ["Soru Sor" düğmesini tıklayarak sorunun üst kısmına bakın. sayfası] (http://stackoverflow.com/questions/ask). Eğer bununla aynı meseleye sahipseniz, yeterince itibara sahip olduğunuzda, [soruları yanıtlayın] (http://stackoverflow.com/help/privileges/vote-up) veya [bir ödül ekleyebilirsin] (http : //stackoverflow.com/help/bounty) üzerinde. Soruyu favori olarak da "yıldız" diyebilirsiniz, bu durumda sistem sizi yeni cevaplardan haberdar edecektir. –

+1

Çözümünüz için teşekkürler! Bu aslında oldukça can sıkıcı ve çok etkiliyor .. – Anas

+1

Bu sadece Ağustos 2015'te OSX 10.10'da hala aynı sorunu yaşadığımı belirten bir yorumda bulunuyor.gfortran ile 4 (hatta gfortran version üzerine) segmentasyon hataları kusuyor. Bu gönderideki ikinci dışa aktarma komutunu kullanmak sorunu çözdü. Ben sorunun bir parçası Libtool XCode eski sürümden olduğunu düşünüyorum (http://www.jattcode.com/installing-autoconf-automake-libtool-on-mac-osx-mountain-lion/ ([burada] bakınız)). Ben MacPorts libtools yüklemeye çalıştı ama glibtools altında farklı bir konum içinde yüklemek gibi görünüyor. – TSGM

0

Benim g ++ sürümüdür Ben sudo port selfupdate

de

bunu yapmak için launchctl setenv MACOSX_DEPLOYMENT_TARGET 10.9 çalıştırabilirsiniz sudo port upgrade outdated

Bu benim için çalıştı

izledi ran 4.7.4

(MacPorts + evrensel 4.7.4_5 gcc47) kalıcı.