Closed maxberggren closed 5 years ago
The code is there :-( it apparently hasn't built for you? What did setup.py install say for you when you ran it? Did it complain about anything?
It said some things :)
running install
running bdist_egg
running egg_info
creating umap.egg-info
writing requirements to umap.egg-info/requires.txt
writing umap.egg-info/PKG-INFO
writing top-level names to umap.egg-info/top_level.txt
writing dependency_links to umap.egg-info/dependency_links.txt
writing manifest file 'umap.egg-info/SOURCES.txt'
reading manifest file 'umap.egg-info/SOURCES.txt'
writing manifest file 'umap.egg-info/SOURCES.txt'
installing library code to build/bdist.macosx-10.6-x86_64/egg
running install_lib
running build_py
creating build
creating build/lib.macosx-10.6-x86_64-2.7
creating build/lib.macosx-10.6-x86_64-2.7/umap
copying umap/__init__.py -> build/lib.macosx-10.6-x86_64-2.7/umap
copying umap/umap_.py -> build/lib.macosx-10.6-x86_64-2.7/umap
running build_ext
cythoning umap/umap_utils.pyx to umap/umap_utils.c
building 'umap.umap_utils' extension
creating build/temp.macosx-10.6-x86_64-2.7
creating build/temp.macosx-10.6-x86_64-2.7/umap
gcc -fno-strict-aliasing -I/Users/max/anaconda/include -arch x86_64 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/Users/max/anaconda/lib/python2.7/site-packages/numpy/core/include -I/usr/include -I/Users/max/anaconda/include/python2.7 -c umap/umap_utils.c -o build/temp.macosx-10.6-x86_64-2.7/umap/umap_utils.o
In file included from umap/umap_utils.c:274:
In file included from /Users/max/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:4:
In file included from /Users/max/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:18:
In file included from /Users/max/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:1809:
/Users/max/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:15:2: warning:
"Using deprecated NumPy API, disable it by " "#defining NPY_NO_DEPRECATED_API
NPY_1_7_API_VERSION" [-W#warnings]
#warning "Using deprecated NumPy API, disable it by " \
^
In file included from umap/umap_utils.c:274:
In file included from /Users/max/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:4:
In file included from /Users/max/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:27:
/Users/max/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/__multiarray_api.h:1453:1: warning:
unused function '_import_array' [-Wunused-function]
_import_array(void)
^
umap/umap_utils.c:28421:32: warning: unused function '__Pyx_PyUnicode_FromString'
[-Wunused-function]
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
^
umap/umap_utils.c:367:29: warning: unused function '__Pyx_Py_UNICODE_strlen' [-Wunused-function]
static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
^
umap/umap_utils.c:24646:32: warning: unused function '__Pyx_GetItemInt_List_Fast'
[-Wunused-function]
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
^
umap/umap_utils.c:24661:32: warning: unused function '__Pyx_GetItemInt_Tuple_Fast'
[-Wunused-function]
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
^
umap/umap_utils.c:25059:1: warning: unused function '__pyx_add_acquisition_count_locked'
[-Wunused-function]
__pyx_add_acquisition_count_locked(__pyx_atomic_int *acquisition_count,
^
umap/umap_utils.c:25069:1: warning: unused function '__pyx_sub_acquisition_count_locked'
[-Wunused-function]
__pyx_sub_acquisition_count_locked(__pyx_atomic_int *acquisition_count,
^
umap/umap_utils.c:26662:46: warning: unused function '__Pyx_PyInt_From_npy_int8' [-Wunused-function]
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_npy_int8(npy_int8 value) {
^
umap/umap_utils.c:26725:48: warning: unused function '__pyx_t_float_complex_from_parts'
[-Wunused-function]
static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {
^
umap/umap_utils.c:26736:30: warning: unused function '__Pyx_c_eqf' [-Wunused-function]
static CYTHON_INLINE int __Pyx_c_eqf(__pyx_t_float_complex a, __pyx_t_float_complex b) {
^
umap/umap_utils.c:26739:48: warning: unused function '__Pyx_c_sumf' [-Wunused-function]
static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sumf(__pyx_t_float_complex a, __pyx_t...
^
umap/umap_utils.c:26745:48: warning: unused function '__Pyx_c_difff' [-Wunused-function]
static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_difff(__pyx_t_float_complex a, __pyx_...
^
umap/umap_utils.c:26757:48: warning: unused function '__Pyx_c_quotf' [-Wunused-function]
static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quotf(__pyx_t_float_complex a, __pyx_...
^
umap/umap_utils.c:26764:48: warning: unused function '__Pyx_c_negf' [-Wunused-function]
static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_negf(__pyx_t_float_complex a) {
^
umap/umap_utils.c:26770:30: warning: unused function '__Pyx_c_is_zerof' [-Wunused-function]
static CYTHON_INLINE int __Pyx_c_is_zerof(__pyx_t_float_complex a) {
^
umap/umap_utils.c:26773:48: warning: unused function '__Pyx_c_conjf' [-Wunused-function]
static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conjf(__pyx_t_float_complex a) {
^
umap/umap_utils.c:26787:52: warning: unused function '__Pyx_c_powf' [-Wunused-function]
static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_powf(__pyx_t_float_complex a, __p...
^
umap/umap_utils.c:26847:49: warning: unused function '__pyx_t_double_complex_from_parts'
[-Wunused-function]
static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, ...
^
umap/umap_utils.c:26858:30: warning: unused function '__Pyx_c_eq' [-Wunused-function]
static CYTHON_INLINE int __Pyx_c_eq(__pyx_t_double_complex a, __pyx_t_double_complex b) {
^
umap/umap_utils.c:26861:49: warning: unused function '__Pyx_c_sum' [-Wunused-function]
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum(__pyx_t_double_complex a, __pyx_...
^
umap/umap_utils.c:26867:49: warning: unused function '__Pyx_c_diff' [-Wunused-function]
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff(__pyx_t_double_complex a, __pyx...
^
umap/umap_utils.c:26879:49: warning: unused function '__Pyx_c_quot' [-Wunused-function]
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot(__pyx_t_double_complex a, __pyx...
^
umap/umap_utils.c:26886:49: warning: unused function '__Pyx_c_neg' [-Wunused-function]
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg(__pyx_t_double_complex a) {
^
umap/umap_utils.c:26892:30: warning: unused function '__Pyx_c_is_zero' [-Wunused-function]
static CYTHON_INLINE int __Pyx_c_is_zero(__pyx_t_double_complex a) {
^
umap/umap_utils.c:26895:49: warning: unused function '__Pyx_c_conj' [-Wunused-function]
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj(__pyx_t_double_complex a) {
^
umap/umap_utils.c:26909:53: warning: unused function '__Pyx_c_pow' [-Wunused-function]
static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow(__pyx_t_double_complex a, __...
^
umap/umap_utils.c:27422:45: warning: function '__Pyx_PyInt_As_npy_int8' is not needed and will not
be emitted [-Wunneeded-internal-declaration]
static CYTHON_INLINE npy_int8 __Pyx_PyInt_As_npy_int8(PyObject *x) {
^
umap/umap_utils.c:27792:41: warning: function '__Pyx_PyInt_As_char' is not needed and will not be
emitted [-Wunneeded-internal-declaration]
static CYTHON_INLINE char __Pyx_PyInt_As_char(PyObject *x) {
^
umap/umap_utils.c:9307:32: warning: unused function '__pyx_f_5numpy_PyArray_MultiIterNew1'
[-Wunused-function]
static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__pyx_v_a) {
^
umap/umap_utils.c:9354:32: warning: unused function '__pyx_f_5numpy_PyArray_MultiIterNew2'
[-Wunused-function]
static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__pyx_v_a, PyO...
^
umap/umap_utils.c:9401:32: warning: unused function '__pyx_f_5numpy_PyArray_MultiIterNew3'
[-Wunused-function]
static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__pyx_v_a, PyO...
^
umap/umap_utils.c:9448:32: warning: unused function '__pyx_f_5numpy_PyArray_MultiIterNew4'
[-Wunused-function]
static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__pyx_v_a, PyO...
^
umap/umap_utils.c:9495:32: warning: unused function '__pyx_f_5numpy_PyArray_MultiIterNew5'
[-Wunused-function]
static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__pyx_v_a, PyO...
^
umap/umap_utils.c:10297:27: warning: unused function '__pyx_f_5numpy_set_array_base'
[-Wunused-function]
static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_arr, PyObjec...
^
umap/umap_utils.c:10393:32: warning: unused function '__pyx_f_5numpy_get_array_base'
[-Wunused-function]
static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__pyx_v_arr) {
^
36 warnings generated.
gcc -bundle -undefined dynamic_lookup -L/Users/max/anaconda/lib -arch x86_64 -arch x86_64 build/temp.macosx-10.6-x86_64-2.7/umap/umap_utils.o -L/usr/lib -L/Users/max/anaconda/lib -lgsl -lcblas -o build/lib.macosx-10.6-x86_64-2.7/umap/umap_utils.so
creating build/bdist.macosx-10.6-x86_64
creating build/bdist.macosx-10.6-x86_64/egg
creating build/bdist.macosx-10.6-x86_64/egg/umap
copying build/lib.macosx-10.6-x86_64-2.7/umap/__init__.py -> build/bdist.macosx-10.6-x86_64/egg/umap
copying build/lib.macosx-10.6-x86_64-2.7/umap/umap_.py -> build/bdist.macosx-10.6-x86_64/egg/umap
copying build/lib.macosx-10.6-x86_64-2.7/umap/umap_utils.so -> build/bdist.macosx-10.6-x86_64/egg/umap
byte-compiling build/bdist.macosx-10.6-x86_64/egg/umap/__init__.py to __init__.pyc
byte-compiling build/bdist.macosx-10.6-x86_64/egg/umap/umap_.py to umap_.pyc
creating stub loader for umap/umap_utils.so
byte-compiling build/bdist.macosx-10.6-x86_64/egg/umap/umap_utils.py to umap_utils.pyc
creating build/bdist.macosx-10.6-x86_64/egg/EGG-INFO
copying umap.egg-info/PKG-INFO -> build/bdist.macosx-10.6-x86_64/egg/EGG-INFO
copying umap.egg-info/SOURCES.txt -> build/bdist.macosx-10.6-x86_64/egg/EGG-INFO
copying umap.egg-info/dependency_links.txt -> build/bdist.macosx-10.6-x86_64/egg/EGG-INFO
copying umap.egg-info/requires.txt -> build/bdist.macosx-10.6-x86_64/egg/EGG-INFO
copying umap.egg-info/top_level.txt -> build/bdist.macosx-10.6-x86_64/egg/EGG-INFO
writing build/bdist.macosx-10.6-x86_64/egg/EGG-INFO/native_libs.txt
zip_safe flag not set; analyzing archive contents...
creating dist
creating 'dist/umap-0.0.1-py2.7-macosx-10.6-x86_64.egg' and adding 'build/bdist.macosx-10.6-x86_64/egg' to it
removing 'build/bdist.macosx-10.6-x86_64/egg' (and everything under it)
Processing umap-0.0.1-py2.7-macosx-10.6-x86_64.egg
Removing /Users/max/anaconda/lib/python2.7/site-packages/umap-0.0.1-py2.7-macosx-10.6-x86_64.egg
Copying umap-0.0.1-py2.7-macosx-10.6-x86_64.egg to /Users/max/anaconda/lib/python2.7/site-packages
umap 0.0.1 is already the active version in easy-install.pth
Installed /Users/max/anaconda/lib/python2.7/site-packages/umap-0.0.1-py2.7-macosx-10.6-x86_64.egg
Processing dependencies for umap==0.0.1
Searching for Cython==0.24.1
Best match: Cython 0.24.1
Adding Cython 0.24.1 to easy-install.pth file
Using /Users/max/anaconda/lib/python2.7/site-packages
Searching for scikit-learn==0.18
Best match: scikit-learn 0.18
Adding scikit-learn 0.18 to easy-install.pth file
Using /Users/max/anaconda/lib/python2.7/site-packages
Finished processing dependencies for umap==0.0.1
That all looks ... fine. I was hoping it would have something informatively weird. It did specifically say it built umap_utils, so now I'm confused as to why it isn't there for you. I wish I actually understood how python packaging works.
If you can do a
python setup.py build
And then cd into the appropriate directory and run from there that might work ... and if it doesn't we can maybe diagnose why a little easier. I don't know how to debug egg files.
Ran above and upgraded to the versions in your tweet. Is it saying skipping imap_utils.c here a clue?
python setup.py build
running build
running build_py
copying umap/umap_.py -> build/lib.macosx-10.6-x86_64-2.7/umap
running build_ext
skipping 'umap/umap_utils.c' Cython extension (up-to-date)```
No, that should be fine (it's already, in principle) built it. Ideally in build/lib.macosx-10.6-x86_64-2.7/umap there should be a file umap_utils.cpython-35m-darwin.so (or similarly named; perhaps with a 27 instead of 35). If that isn't there then that's the problem ... if it is then try:
cd build/lib.macosx-10.6-x86_64-2.7
python
>>> import umap
because that should work if the file is there. This may be a python2/python3 thing where I haven't gotten compatability in local package referencing. I'll look into that now, but I'm about to board a flight, so might not be able to update for several hours.
The file is there – and the import from that folder works! Thanks for your great work and time.
Still not sure why the install doesn't work, but hopefully that can be ironed out at a later date.
same problem for me (and same "solution"). Built with miniconda.
I'll see what I can figure out, but I admit I am completely at a loss right now. Sorry. At least there is a workaround, just not a good one.
Seems to be resolved in current version.
Looks like
umap_utils
is missing?