Cannot install NuPIC on Windows 10

Installed new version of Python (3.7)
Cloned NuPIC repo.
Ran ‘python .\setup.py develop’
After a lot of downloads, this error:

File “C:\Users\david\AppData\Local\Temp\easy_install-t8rdcs56\torch-0.1.2.post2\setup.py”, line 77, in run
ModuleNotFoundError: No module named ‘tools.cwrap’

No, I can’t find that piece of source code. It seems to have been deleted from the temp location.
No, I can’t find any mention of this error or this module on web search.
Yes, it’s absolutely reproducible. I did it all twice, identical results.

So what do I try now?

NuPIC is python 2.7 only. :frowning_face:

Thanks. That should be in the README, don’t you think? I’ll raise an issue.

So I repeated the exercise with python 2.7 and almost immediately got this error:
ImportError: cannot import name find_namespace_packages

AFAIK ‘find_namespace_packages’ is a python3 feature, isn’t it? At least on my installation it exists in 3.7 and not in 2.7.

It is extremely difficult to get Nupic.core to run under windows (any version).

Try using the community version htm.core at https://github.com/htm-community/htm.core
It works with Python3 and with windows 10 using MSVC 2017 or 2019 compilers. See the Readme.

This repository is being actively supported, the Nupic.core is not.

1 Like

I got it to build OK, but it failed the tests: undocumented dependency on USER variable (issue raised).

But I’ll follow your suggestion. Community here we come!

DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won’t be maintained after that date. A future version of pip will drop support for Python 2.7.

Hope nupic could be installed in python before jan 2020

It seems unlikely Numenta NuPIC is going to be ported to CPython
3.x.

However:

  • htm.core is a fork of NuPIC that supports CPython 3.x.
  • It is effectively under the AGPL license due to its many
    contributors and resultant mixed copyright.
  • It has breaking API changes.
  • It’s supported by a community.
  • Some Linux distributions will most likely be supporting CPython 2.7 beyond Jan 1, 2020 - EG RHEL/CentOS.
  • It’s possible Tauthon, the fork of CPython 2.7, will become a good way to run Numenta’s version of NuPIC.
  • For a while, I was concerned that Tauthon wasn’t going to be
    supported by pip, but it now looks like that may be happening
    after all.
  • Pypy, the high performance Python-written-in-Python, is likely to support Python 2.7 (the language, not the reference implementation of Python) for a long time, as it is written in a dialect of Python 2.x called RPython.
  • However, Pypy is pretty different from CPython internally, so it’s probably more of a long shot than Tauthon.

HTH.

2 Likes

I suggest you start using htm.core for your python 3 needs.

1 Like

That’s fine for some projects, maybe even most projects, but it’s not a
solution for all projects.