libstdc ++. so.6: paylaşılan nesne dosyası açılamıyor: Böyle bir dosya veya dizin yok


93

Cilkscreen komutunu cilk ++ programı ile çalıştırmak istiyorum ama bu hatayı aldım

/usr/local/cilk/bin/../lib32/pinbin: paylaşılan kitaplıkları yüklerken hata: libstdc ++. so.6: paylaşılan nesne dosyası açılamıyor: Böyle bir dosya veya dizin yok

Bana yardım edebilir misin lütfen

Yanıtlar:


223

Bunu dene:

apt-get install lib32stdc++6

7
Bu, ia32-lib'leri kurmaktan çok daha iyidir (trion tarafından önerildiği gibi). Bunu yaparken, 1 veya 2 başka bağımlılık kurmam gerekti, ia32-libs toplam 267 MB ek disk alanı olan 241 bağımlılığa sahip.
Mike

1
Bu ayrıca, kendi kendine açılan programı test etmek için Microsoft Windows sanal araçlarını çalıştırmak için de çalışır. Teşekkürler!
Charles Engelke

4
@takeit 64bit bir makine için lib64stdc++6bunun yerine kurmalı mıyız ?
boddhisattva

@boddhisattva Sanırım lib32stdc++632bit yazılımı çalıştıran 64bit makine için. "Uyumluluk katmanı" na benzer bir şey. 64bit ("yerli") yazılımı 64bit makinede çalıştırmak için ihtiyacınız var libstdc++6. (Bağlantılar Ubuntu 14.04 Trusty Tahr içindir; Ubuntu 10.10 Maverick Meerkat bağlantısını bulamıyorum.)
Franklin Yu

Harika, bu sorunu android kaynak kodunu oluşturmaya çalıştığım farklı bir durumda karşılaşsam da sorunu mükemmel bir şekilde çözdü. Çok teşekkürler !!! ls
oscarz

15

Linux'u bir amd64 makinesinde çalıştırdığınızı varsayıyorum. Yürütülebilir dosyanın içinde bulunduğu Klasör ( lib32), 32 bit kitaplıklar gerektiren 32 bitlik bir yürütülebilir dosya önerir.

Bunlar sisteminizde yok gibi görünüyor, bu nedenle bunları manuel olarak yüklemeniz gerekir. Paket adı dağıtımınıza bağlıdır, Debian ia32-libsiçin ise Fedora içindir libstdc++.<version>.i686.


Linux'u Ubuntu
10.10'da

Sonra bunu Debian yöntemiyle yapmak ve ia32-libskullanmaya çalıştığınız yazılımın 64-bit versiyonunu kurmak veya ona geçmek istersiniz.
Fabian Knorr

Bu paketi yükledim ama şimdi başka bir hata aldım "-7 sinyali tarafından öldürülen işlem E: pid
3874'e iliştir

Görünüşe göre 32 bitlik bir uygulamaya 64 bit hata ayıklayıcı / monitör eklemeye mi çalışıyorsunuz yoksa tam tersi mi? Gerçekten 64 bit bileşenleri almaya ve 64 bit yürütülebilir dosyalar oluşturmaya çalışmalısınız; bu hayatı çok daha kolaylaştıracak.
Fabian Knorr

1
Bunu nasıl yapabilirim ? Ben bir Linux acemisiyim ve 64-bit hata ayıklayıcı / monitörün 32-bitlik bir uygulamaya nasıl ekleneceğini iyi anlamıyorum ov / s. bunu açıklayabilir misin lütfen
cephane

9

Fedora kullanımı için:

yum install libstdc++44.i686

Şunları çalıştırarak hangi sürümlerin desteklendiğini öğrenebilirsiniz:

yum list all | grep libstdc | grep i686


9

Red Hat için:

sudo yum install libstdc++.i686
sudo yum install libstdc++-devel.i686

1

/usr/local/cilk/bin/../lib32/pinbin, artık mevcut olmayan bir libstdc ++. so.6 kitaplığına dinamik olarak bağlıdır. Cilk'i yeniden derlemeniz gerekiyor


ancak libstdc ++. so.6 / usr / lib klasöründe var
cephane

1
Evet, ancak 32 bitlik bir uygulama olduğu için gerektirir /usr/lib32/libstdc++.so.6.
Fabian Knorr
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.