98

I want to run Cilkscreen command with a cilk++ program but I'v got this error

/usr/local/cilk/bin/../lib32/pinbin: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

Can you help me please

Sam R.
  • 16,027
  • 12
  • 69
  • 122
ammouna
  • 981
  • 1
  • 6
  • 4

5 Answers5

243

Try this:

apt-get install lib32stdc++6
takeit
  • 3,991
  • 1
  • 20
  • 36
  • 7
    This is *much* better than installing ia32-libs (as proposed by trion). Doing this, I had to install 1 or 2 other dependencies while ia32-libs has 241 dependencies totaling 267 MB additional disk space. – Mike Oct 15 '13 at 21:58
  • 1
    This also works to run the Microsoft Windows virtual appliances for testing self-extracting program. Thanks! – Charles Engelke Apr 28 '14 at 16:15
  • 4
    @takeit For a 64bit machine, should we install `lib64stdc++6` instead ? – boddhisattva Aug 28 '15 at 05:46
  • @boddhisattva I think [`lib32stdc++6`](http://packages.ubuntu.com/trusty/libs/lib32stdc++6) is for 64bit machine running 32bit software. Something similar to "compatibility layer". To run 64bit ("native") software on 64bit machine you just need [`libstdc++6`](http://packages.ubuntu.com/trusty/libs/libstdc++6). (The links are for Ubuntu 14.04 Trusty Tahr; I cannot find the link for Ubuntu 10.10 Maverick Meerkat.) – Franklin Yu Jun 14 '16 at 03:49
  • Awesome, though I met this problem in a different situation where I try to build android source code, it figured out the problem perfectly. Thank you so so much!!!ls – oscarz May 13 '17 at 03:07
15

I presume you're running Linux on an amd64 machine. The Folder your executable is residing in (lib32) suggests a 32-bit executable which requires 32-bit libraries.

These seem not to be present on your system, so you need to install them manually. The package name depends on your distribution, for Debian it's ia32-libs, for Fedora libstdc++.<version>.i686.

Fabian Knorr
  • 3,134
  • 3
  • 20
  • 32
  • I'm running Linux on Ubuntu 10.10 – ammouna Jul 13 '12 at 14:05
  • Then you want to do it the Debian way and install `ia32-libs` or switch to a 64-bit version of the software you're trying to use. – Fabian Knorr Jul 13 '12 at 14:08
  • I was installed this package but I'v got now another error "process killed by signal -7 E:Attach to pid 3874 failed: Operation not permitted" – ammouna Jul 13 '12 at 14:30
  • Looks like you're trying to attach a 64-bit debugger/monitor to a 32-bit application or vice versa? You should really try to get 64-bit components and create 64-bit executables; this will make life much easier. – Fabian Knorr Jul 13 '12 at 15:04
  • 1
    How can I do this ? I'm a Linux beginner and I don't understand you well how to attach a 64-bit debugger/monitor to a 32-bits application o v/s. can you explain that please – ammouna Jul 13 '12 at 15:12
  • I haven't used Cilk before, so I'm afraid I can't really help you with that. Search Google for 64-bit versions of Cilk or start a new thread on this topic ("Using Cilk on 64-bit systems"). – Fabian Knorr Jul 13 '12 at 16:23
  • Thanks for sharing! This solved for me on Debian 6 "squeeze": `$ sudo apt-get install ia32-libs` – AlessMascherpa May 09 '13 at 08:52
11

For Red Hat :

sudo yum install libstdc++.i686
sudo yum install libstdc++-devel.i686
Arpit Gupta
  • 501
  • 1
  • 5
  • 14
9

For Fedora use:

yum install libstdc++44.i686

You can find out which versions are supported by running:

yum list all | grep libstdc | grep i686

gilm
  • 7,690
  • 3
  • 41
  • 41
1

/usr/local/cilk/bin/../lib32/pinbin is dynamically linked to a library libstdc++.so.6 which is not present anymore. You need to recompile Cilk

Thomas
  • 2,093
  • 3
  • 23
  • 28