Your issue seems to be with your libstdc++ and glibc versions and nothing to do
with your compiler (both are part of the gnu toolchain, but each is distinct
and might cause independent problems).
Either your system libraries are incompatibly old for nupic, or your
environment is preventing _math.so from finding the right libraries at runtime.
What version is your glibc?
Just run
~$/lib64/libc.so.6
And you'll get something like
GNU C Library (Ubuntu EGLIBC 2.15-0ubuntu10.7) stable release version 2.15, by
Roland McGrath et al.
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Compiled by GNU CC version 4.6.3.
Compiled on a Linux 3.2.60 system on 2014-08-28.
Available extensions:
crypt add-on version 2.1 by Michael Glad and others
GNU Libidn by Simon Josefsson
Native POSIX Threads Library by Ulrich Drepper et al
BIND-8.2.3-T5B
libc ABIs: UNIQUE IFUNC
For bug reporting instructions, please see:
<http://www.debian.org/Bugs/>.
nupic requires at least GNU Libc 2.14. Do the same check for libstdc++ and make
sure the version meets the requirement. It doesn't look like libstdc++.so.6 has
a valid executable entry address like glibc, though. So you'll have to get the
version another way.
Also, it appears _math.so is linking with the correct system libraries, so you
shouldn't need to set LD_LIBRARY_PATH in order to override /usr/bin/ld's (or
whichever one your g++ was compiled with) default runtime library search path.
But since you say there is a correct version installed, so you should try
setting LD_LIBRARY_PATH to the path of those libraries (unless you've already
tried that).
________________________________
From: nupic [[email protected]] on behalf of Ryan J. McCall
[[email protected]]
Sent: Saturday, September 19, 2015 3:32 PM
To: Dillon Bender
Subject: Re: NuPIC on Linux
Hi Matt, Thanks for the reply.
I'm able to verify that some those packages are installed except "python-dev"
"libpcre3-dev" maybe given some more time I can make sure of that.
The immediate issue I'm seeing is with nupic/bindings linking to old versions
of g++ on my linux machine.
$ ldd /usr/local/lib/python2.7/site-packages/nupic/bindings/_math.so
/usr/local/lib/python2.7/site-packages/nupic/bindings/_math.so:
/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found (required by
/usr/local/lib/python2.7/site-packages/nupic/bindings/_math.so)
/usr/local/lib/python2.7/site-packages/nupic/bindings/_math.so:
/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by
/usr/local/lib/python2.7/site-packages/nupic/bindings/_math.so)
/usr/local/lib/python2.7/site-packages/nupic/bindings/_math.so:
/lib64/libc.so.6: version `GLIBC_2.14' not found (required by
/usr/local/lib/python2.7/site-packages/nupic/bindings/_math.so)
I can't figure out how to point the "_math.so" to a different version of
libstdc++. (the machine does have another version with the right GLIBCXX_x.y.z
installed).
With all this effort, I'm beginning to wonder if I should try the docker route
to install on linux =) Thanks again.
Best,
Ryan
On Thu, Sep 17, 2015 at 9:48 AM, Matthew Taylor
<[email protected]<mailto:[email protected]>> wrote:
I assume you have the following packages installed?
python-dev python-pip automake libtool libssl-dev g++ cmake libpcre3-dev
---------
Matt Taylor
OS Community Flag-Bearer
Numenta
On Wed, Sep 16, 2015 at 8:30 AM, Ryan J. McCall
<[email protected]<mailto:[email protected]>> wrote:
> Hello, I wanted to see if I could get some hints about this error I'm
> encountering when running NuPIC on Linux:
>
> ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found
> (required by /usr/local/lib/python2.7/site-packages/nupic/bindings/_math.so)
>
> Thank you,
>
> Ryan
>
>
> On Sun, Sep 13, 2015 at 3:50 PM, Ryan J. McCall
> <[email protected]<mailto:[email protected]>>
> wrote:
>>
>> Hi Austin!
>>
>> Yes it's a 64-bit system. The issue was the default version of python
>> being 2.6. By changing the alias for python to python2.7 I was able to
>> install nupic, i.e. I can import nupic in python.
>>
>> Now I'm facing:
>>
>> ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.18' not found
>> (required by /usr/local/lib/python2.7/site-packages/nupic/bindings/_math.so)
>>
>> By doing `strings /usr/lib64/libstdc++.so.6 | grep LIBCXX` I see that the
>> highest version is `GLIBCXX_3.4.13`
>>
>> And `g++ -v ` gives "gcc version 4.8.5 (GCC)".
>>
>> Base on some reading it seems I have to do some linking or set
>> $LD_LIBRARY_PATH differently.
>>
>> Well, that's where I am and I'd appreciate any further pointers. I'll keep
>> at this.
>>
>> Many thanks,
>>
>> Ryan
>> _____________________________________________
>>
>> Hi, Ryan!
>>
>> What is the output of `python -c 'import struct; print 8 *
>> struct.calcsize("P")'`?
>>
>> For example, on my system:
>>
>> $ python -c 'import struct; print 8 * struct.calcsize("P")'
>> 64
>>
>> If it prints 32, you're on a 32-bit system, in which case the 64-bit wheel
>> won't work.
>>
>> Separately, if you're not running Python 2.7.x, then it won't work either.
>> What is the output of `python --version`?
>>
>> It should look something like:
>>
>> $ python --version
>> Python 2.7.6
>>
>>
>> If installing the binaries fails, building from source is an option if
>> you're running Python 2.7
>>
>> On Sat, Sep 12, 2015 at 5:49 PM, Ryan J. McCall
>> <[email protected]<mailto:[email protected]>>
>> wrote:
>>>
>>> Hi NuPIC,
>>>
>>> I'm trying to install NuPIC on Linux but perhaps pip thinks I'm on a
>>> 32-bit system? Installing the nupic.core wheel is not happening.
>>>
>>> pip install
>>> https://s3-us-west-2.amazonaws.com/artifacts.numenta.org/numenta/nupic.core/releases/nupic.bindings/nupic.bindings-0.1.5-cp27-none-linux_x86_64.whl
>>> nupic.bindings-0.1.5-cp27-none-linux_x86_64.whl is not a supported wheel
>>> on this platform.
>>>
>>> You're help is greatly appreciated.
>>>
>>> Thank you,
>>>
>>> Ryan
>>
>>
>>
>>
>> --
>> Ryan J. McCall
>> ryanjmccall.com<http://ryanjmccall.com>
>> 650 906 8223<tel:650%20906%208223>
>
>
>
>
> --
> Ryan J. McCall
> ryanjmccall.com<http://ryanjmccall.com>
> 650 906 8223<tel:650%20906%208223>
--
Ryan J. McCall
ryanjmccall.com<http://ryanjmccall.com>