Fix CXX numbuf error message for Anaconda 3.6. (#258)

This commit is contained in:
Robert Nishihara 2017-02-09 23:29:43 -08:00 committed by Philipp Moritz
parent 883bedf46e
commit 0aa234fb9c
3 changed files with 14 additions and 2 deletions

View file

@ -14,6 +14,12 @@ brew install cmake automake autoconf libtool boost wget
pip install numpy cloudpickle funcsigs colorama psutil redis --ignore-installed six pip install numpy cloudpickle funcsigs colorama psutil redis --ignore-installed six
``` ```
If you are using Anaconda, you may also need to run the following.
```
conda install libgcc
```
# Install Ray # Install Ray
Ray can be built from the repository as follows. Ray can be built from the repository as follows.

View file

@ -15,6 +15,12 @@ sudo apt-get install -y cmake build-essential autoconf curl libtool libboost-all
pip install numpy cloudpickle funcsigs colorama psutil redis pip install numpy cloudpickle funcsigs colorama psutil redis
``` ```
If you are using Anaconda, you may also need to run the following.
```
conda install libgcc
```
# Install Ray # Install Ray
Ray can be built from the repository as follows. Ray can be built from the repository as follows.

View file

@ -13,10 +13,10 @@ If you are using Anaconda, try fixing this problem by running:
try: try:
from core.src.numbuf.libnumbuf import * from core.src.numbuf.libnumbuf import *
except ImportError as e: except ImportError as e:
if hasattr(e, "msg") and isinstance(e.msg, str) and "GLIBCXX" in e.msg: if hasattr(e, "msg") and isinstance(e.msg, str) and ("libstdc++" in e.msg or "CXX" in e.msg):
# This code path should be taken with Python 3. # This code path should be taken with Python 3.
e.msg += helpful_message e.msg += helpful_message
elif hasattr(e, "message") and isinstance(e.message, str) and "GLIBCXX" in e.message: elif hasattr(e, "message") and isinstance(e.message, str) and ("libstdc++" in e.message or "CXX" in e.message):
# This code path should be taken with Python 2. # This code path should be taken with Python 2.
if hasattr(e, "args") and isinstance(e.args, tuple) and len(e.args) == 1 and isinstance(e.args[0], str): if hasattr(e, "args") and isinstance(e.args, tuple) and len(e.args) == 1 and isinstance(e.args[0], str):
e.args = (e.args[0] + helpful_message,) e.args = (e.args[0] + helpful_message,)