LibRecommender
LibRecommender copied to clipboard
Failed installation of LibRecommender on Ubuntu 20.04.2
Trying to install LibRecommender with pip failed when trying to build the wheel.
➜ ~ sudo pip3 install LibRecommender
Collecting LibRecommender
Using cached LibRecommender-0.6.4.tar.gz (469 kB)
Requirement already satisfied: numpy>=1.15.4 in /usr/local/lib/python3.8/dist-packages (from LibRecommender) (1.19.5)
Requirement already satisfied: scipy>=1.2.1 in /usr/local/lib/python3.8/dist-packages (from LibRecommender) (1.6.1)
Requirement already satisfied: pandas>=0.23.4 in /usr/local/lib/python3.8/dist-packages (from LibRecommender) (1.2.3)
Requirement already satisfied: scikit-learn>=0.20.0 in /usr/local/lib/python3.8/dist-packages (from LibRecommender) (0.24.1)
Requirement already satisfied: tensorflow>=1.14.0 in /usr/local/lib/python3.8/dist-packages (from LibRecommender) (2.4.1)
Requirement already satisfied: gensim>=3.6.0 in /usr/local/lib/python3.8/dist-packages (from LibRecommender) (4.0.1)
Requirement already satisfied: tqdm>=4.46.0 in /usr/local/lib/python3.8/dist-packages (from LibRecommender) (4.58.0)
Requirement already satisfied: smart-open>=1.8.1 in /usr/local/lib/python3.8/dist-packages (from gensim>=3.6.0->LibRecommender) (5.0.0)
Requirement already satisfied: pytz>=2017.3 in /usr/lib/python3/dist-packages (from pandas>=0.23.4->LibRecommender) (2019.3)
Requirement already satisfied: python-dateutil>=2.7.3 in /usr/lib/python3/dist-packages (from pandas>=0.23.4->LibRecommender) (2.7.3)
Requirement already satisfied: joblib>=0.11 in /usr/local/lib/python3.8/dist-packages (from scikit-learn>=0.20.0->LibRecommender) (1.0.1)
Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.8/dist-packages (from scikit-learn>=0.20.0->LibRecommender) (2.1.0)
Requirement already satisfied: grpcio~=1.32.0 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (1.32.0)
Requirement already satisfied: gast==0.3.3 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (0.3.3)
Requirement already satisfied: six~=1.15.0 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (1.15.0)
Requirement already satisfied: wheel~=0.35 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (0.36.2)
Requirement already satisfied: absl-py~=0.10 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (0.12.0)
Requirement already satisfied: astunparse~=1.6.3 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (1.6.3)
Requirement already satisfied: google-pasta~=0.2 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (0.2.0)
Requirement already satisfied: opt-einsum~=3.3.0 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (3.3.0)
Requirement already satisfied: h5py~=2.10.0 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (2.10.0)
Requirement already satisfied: termcolor~=1.1.0 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (1.1.0)
Requirement already satisfied: typing-extensions~=3.7.4 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (3.7.4.3)
Requirement already satisfied: wrapt~=1.12.1 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (1.12.1)
Requirement already satisfied: tensorboard~=2.4 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (2.5.0)
Requirement already satisfied: protobuf>=3.9.2 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (3.15.5)
Requirement already satisfied: tensorflow-estimator<2.5.0,>=2.4.0 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (2.4.0)
Requirement already satisfied: keras-preprocessing~=1.1.2 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (1.1.2)
Requirement already satisfied: flatbuffers~=1.12.0 in /usr/local/lib/python3.8/dist-packages (from tensorflow>=1.14.0->LibRecommender) (1.12)
Requirement already satisfied: markdown>=2.6.8 in /usr/lib/python3/dist-packages (from tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (3.1.1)
Requirement already satisfied: tensorboard-plugin-wit>=1.6.0 in /usr/local/lib/python3.8/dist-packages (from tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (1.8.0)
Requirement already satisfied: requests<3,>=2.21.0 in /usr/lib/python3/dist-packages (from tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (2.22.0)
Requirement already satisfied: setuptools>=41.0.0 in /usr/local/lib/python3.8/dist-packages (from tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (54.1.1)
Requirement already satisfied: tensorboard-data-server<0.7.0,>=0.6.0 in /usr/local/lib/python3.8/dist-packages (from tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (0.6.0)
Requirement already satisfied: werkzeug>=0.11.15 in /usr/local/lib/python3.8/dist-packages (from tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (1.0.1)
Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in /usr/local/lib/python3.8/dist-packages (from tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (0.4.3)
Requirement already satisfied: google-auth<2,>=1.6.3 in /usr/local/lib/python3.8/dist-packages (from tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (1.27.1)
Requirement already satisfied: cachetools<5.0,>=2.0.0 in /usr/local/lib/python3.8/dist-packages (from google-auth<2,>=1.6.3->tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (4.2.1)
Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.8/dist-packages (from google-auth<2,>=1.6.3->tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (0.2.8)
Requirement already satisfied: rsa<5,>=3.1.4 in /usr/local/lib/python3.8/dist-packages (from google-auth<2,>=1.6.3->tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (4.7.2)
Requirement already satisfied: requests-oauthlib>=0.7.0 in /usr/local/lib/python3.8/dist-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (1.3.0)
Requirement already satisfied: pyasn1<0.5.0,>=0.4.6 in /usr/local/lib/python3.8/dist-packages (from pyasn1-modules>=0.2.1->google-auth<2,>=1.6.3->tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (0.4.8)
Requirement already satisfied: oauthlib>=3.0.0 in /usr/lib/python3/dist-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard~=2.4->tensorflow>=1.14.0->LibRecommender) (3.1.0)
Building wheels for collected packages: LibRecommender
Building wheel for LibRecommender (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-2mcnke7y/librecommender_d83213db9c7a4cd5a0d3c09f24d0ed64/setup.py'"'"'; __file__='"'"'/tmp/pip-install-2mcnke7y/librecommender_d83213db9c7a4cd5a0d3c09f24d0ed64/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-2qhnyxfr
cwd: /tmp/pip-install-2mcnke7y/librecommender_d83213db9c7a4cd5a0d3c09f24d0ed64/
Complete output (129 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.8
creating build/lib.linux-x86_64-3.8/libreco
copying libreco/__init__.py -> build/lib.linux-x86_64-3.8/libreco
creating build/lib.linux-x86_64-3.8/serving
copying serving/__init__.py -> build/lib.linux-x86_64-3.8/serving
creating build/lib.linux-x86_64-3.8/libreco/embedding
copying libreco/embedding/item2vec.py -> build/lib.linux-x86_64-3.8/libreco/embedding
copying libreco/embedding/__init__.py -> build/lib.linux-x86_64-3.8/libreco/embedding
creating build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/dataset.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/data_info.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/transformed.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/sequence.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/processing.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/data_generator.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/__init__.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/split.py -> build/lib.linux-x86_64-3.8/libreco/data
creating build/lib.linux-x86_64-3.8/libreco/feature
copying libreco/feature/column_mapping.py -> build/lib.linux-x86_64-3.8/libreco/feature
copying libreco/feature/unique_features.py -> build/lib.linux-x86_64-3.8/libreco/feature
copying libreco/feature/__init__.py -> build/lib.linux-x86_64-3.8/libreco/feature
copying libreco/feature/column.py -> build/lib.linux-x86_64-3.8/libreco/feature
creating build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/misc.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/sampling.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/__init__.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/serialization.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/exception.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/initializers.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/tf_ops.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/similarities.py -> build/lib.linux-x86_64-3.8/libreco/utils
creating build/lib.linux-x86_64-3.8/libreco/evaluation
copying libreco/evaluation/evaluate.py -> build/lib.linux-x86_64-3.8/libreco/evaluation
copying libreco/evaluation/__init__.py -> build/lib.linux-x86_64-3.8/libreco/evaluation
copying libreco/evaluation/computation.py -> build/lib.linux-x86_64-3.8/libreco/evaluation
copying libreco/evaluation/metrics.py -> build/lib.linux-x86_64-3.8/libreco/evaluation
creating build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/base.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/deepfm.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/fm.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/knn_embed.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/autoint.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/svdpp.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/als.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/caser.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/rnn4rec.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/__init__.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/svd.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/wide_deep.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/din.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/wave_net.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/user_cf.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/youtube_ranking.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/bpr.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/youtube_match.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/item_cf.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/ncf.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
creating build/lib.linux-x86_64-3.8/serving/flask
copying serving/flask/save_redis.py -> build/lib.linux-x86_64-3.8/serving/flask
copying serving/flask/__init__.py -> build/lib.linux-x86_64-3.8/serving/flask
copying serving/flask/save_faiss.py -> build/lib.linux-x86_64-3.8/serving/flask
copying serving/flask/colorize.py -> build/lib.linux-x86_64-3.8/serving/flask
running egg_info
writing LibRecommender.egg-info/PKG-INFO
writing dependency_links to LibRecommender.egg-info/dependency_links.txt
writing requirements to LibRecommender.egg-info/requires.txt
writing top-level names to LibRecommender.egg-info/top_level.txt
reading manifest file 'LibRecommender.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '*.c' under directory 'libreco'
warning: no files found matching '*.sh' under directory 'serving'
warning: no previously-included files matching '*' found under directory 'examples'
warning: no previously-included files matching '*' found under directory 'distributed'
writing manifest file 'LibRecommender.egg-info/SOURCES.txt'
copying libreco/utils/_similarities.cpp -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/_similarities.pyx -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/algorithms/_als.cpp -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/_als.pyx -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/_bpr.cpp -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/_bpr.pyx -> build/lib.linux-x86_64-3.8/libreco/algorithms
creating build/lib.linux-x86_64-3.8/serving/flask/knn
copying serving/flask/knn/knn_deploy.py -> build/lib.linux-x86_64-3.8/serving/flask/knn
copying serving/flask/knn/knn_request.py -> build/lib.linux-x86_64-3.8/serving/flask/knn
creating build/lib.linux-x86_64-3.8/serving/flask/tf
copying serving/flask/tf/tf_deploy.py -> build/lib.linux-x86_64-3.8/serving/flask/tf
copying serving/flask/tf/tf_request.py -> build/lib.linux-x86_64-3.8/serving/flask/tf
creating build/lib.linux-x86_64-3.8/serving/flask/vector
copying serving/flask/vector/vector_deploy.py -> build/lib.linux-x86_64-3.8/serving/flask/vector
copying serving/flask/vector/vector_request.py -> build/lib.linux-x86_64-3.8/serving/flask/vector
running build_ext
building 'libreco.algorithms._bpr' extension
creating build/temp.linux-x86_64-3.8
creating build/temp.linux-x86_64-3.8/libreco
creating build/temp.linux-x86_64-3.8/libreco/algorithms
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.8/dist-packages/numpy/core/include -I/usr/include/python3.8 -c libreco/algorithms/_bpr.cpp -o build/temp.linux-x86_64-3.8/libreco/algorithms/_bpr.o -Wno-unused-function -Wno-maybe-uninitialized -O3 -ffast-math -fopenmp -std=c++11
In file included from /usr/local/lib/python3.8/dist-packages/numpy/core/include/numpy/ndarraytypes.h:1822,
from /usr/local/lib/python3.8/dist-packages/numpy/core/include/numpy/ndarrayobject.h:12,
from /usr/local/lib/python3.8/dist-packages/numpy/core/include/numpy/arrayobject.h:4,
from libreco/algorithms/_bpr.cpp:647:
/usr/local/lib/python3.8/dist-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
17 | #warning "Using deprecated NumPy API, disable it with " \
| ^~~~~~~
libreco/algorithms/_bpr.cpp:21438:276: error: macro "__Pyx_PyCode_New" requires 16 arguments, but only 15 given
21438 | __pyx_codeobj__30 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__29, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_Enum, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__30)) __PYX_ERR(2, 1, __pyx_L1_error)
| ^
libreco/algorithms/_bpr.cpp:363: note: macro "__Pyx_PyCode_New" defined here
363 | #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
|
libreco/algorithms/_bpr.cpp:24251:5: error: macro "__Pyx_PyCode_New" requires 16 arguments, but only 15 given
24251 | );
| ^
libreco/algorithms/_bpr.cpp:363: note: macro "__Pyx_PyCode_New" defined here
363 | #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
|
libreco/algorithms/_bpr.cpp: In function ‘int __Pyx_InitCachedConstants()’:
libreco/algorithms/_bpr.cpp:21438:34: error: ‘__Pyx_PyCode_New’ was not declared in this scope; did you mean ‘PyCode_New’?
21438 | __pyx_codeobj__30 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__29, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_Enum, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__30)) __PYX_ERR(2, 1, __pyx_L1_error)
| ^~~~~~~~~~~~~~~~
| PyCode_New
libreco/algorithms/_bpr.cpp: In function ‘PyCodeObject* __Pyx_CreateCodeObjectForTraceback(const char*, int, int, const char*)’:
libreco/algorithms/_bpr.cpp:24235:15: error: ‘__Pyx_PyCode_New’ was not declared in this scope; did you mean ‘PyCode_New’?
24235 | py_code = __Pyx_PyCode_New(
| ^~~~~~~~~~~~~~~~
| PyCode_New
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
----------------------------------------
ERROR: Failed building wheel for LibRecommender
Running setup.py clean for LibRecommender
Failed to build LibRecommender
Installing collected packages: LibRecommender
Running setup.py install for LibRecommender ... error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-2mcnke7y/librecommender_d83213db9c7a4cd5a0d3c09f24d0ed64/setup.py'"'"'; __file__='"'"'/tmp/pip-install-2mcnke7y/librecommender_d83213db9c7a4cd5a0d3c09f24d0ed64/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-12h0pm0t/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.8/LibRecommender
cwd: /tmp/pip-install-2mcnke7y/librecommender_d83213db9c7a4cd5a0d3c09f24d0ed64/
Complete output (129 lines):
running install
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.8
creating build/lib.linux-x86_64-3.8/libreco
copying libreco/__init__.py -> build/lib.linux-x86_64-3.8/libreco
creating build/lib.linux-x86_64-3.8/serving
copying serving/__init__.py -> build/lib.linux-x86_64-3.8/serving
creating build/lib.linux-x86_64-3.8/libreco/embedding
copying libreco/embedding/item2vec.py -> build/lib.linux-x86_64-3.8/libreco/embedding
copying libreco/embedding/__init__.py -> build/lib.linux-x86_64-3.8/libreco/embedding
creating build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/dataset.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/data_info.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/transformed.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/sequence.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/processing.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/data_generator.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/__init__.py -> build/lib.linux-x86_64-3.8/libreco/data
copying libreco/data/split.py -> build/lib.linux-x86_64-3.8/libreco/data
creating build/lib.linux-x86_64-3.8/libreco/feature
copying libreco/feature/column_mapping.py -> build/lib.linux-x86_64-3.8/libreco/feature
copying libreco/feature/unique_features.py -> build/lib.linux-x86_64-3.8/libreco/feature
copying libreco/feature/__init__.py -> build/lib.linux-x86_64-3.8/libreco/feature
copying libreco/feature/column.py -> build/lib.linux-x86_64-3.8/libreco/feature
creating build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/misc.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/sampling.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/__init__.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/serialization.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/exception.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/initializers.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/tf_ops.py -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/similarities.py -> build/lib.linux-x86_64-3.8/libreco/utils
creating build/lib.linux-x86_64-3.8/libreco/evaluation
copying libreco/evaluation/evaluate.py -> build/lib.linux-x86_64-3.8/libreco/evaluation
copying libreco/evaluation/__init__.py -> build/lib.linux-x86_64-3.8/libreco/evaluation
copying libreco/evaluation/computation.py -> build/lib.linux-x86_64-3.8/libreco/evaluation
copying libreco/evaluation/metrics.py -> build/lib.linux-x86_64-3.8/libreco/evaluation
creating build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/base.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/deepfm.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/fm.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/knn_embed.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/autoint.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/svdpp.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/als.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/caser.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/rnn4rec.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/__init__.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/svd.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/wide_deep.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/din.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/wave_net.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/user_cf.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/youtube_ranking.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/bpr.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/youtube_match.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/item_cf.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/ncf.py -> build/lib.linux-x86_64-3.8/libreco/algorithms
creating build/lib.linux-x86_64-3.8/serving/flask
copying serving/flask/save_redis.py -> build/lib.linux-x86_64-3.8/serving/flask
copying serving/flask/__init__.py -> build/lib.linux-x86_64-3.8/serving/flask
copying serving/flask/save_faiss.py -> build/lib.linux-x86_64-3.8/serving/flask
copying serving/flask/colorize.py -> build/lib.linux-x86_64-3.8/serving/flask
running egg_info
writing LibRecommender.egg-info/PKG-INFO
writing dependency_links to LibRecommender.egg-info/dependency_links.txt
writing requirements to LibRecommender.egg-info/requires.txt
writing top-level names to LibRecommender.egg-info/top_level.txt
reading manifest file 'LibRecommender.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '*.c' under directory 'libreco'
warning: no files found matching '*.sh' under directory 'serving'
warning: no previously-included files matching '*' found under directory 'examples'
warning: no previously-included files matching '*' found under directory 'distributed'
writing manifest file 'LibRecommender.egg-info/SOURCES.txt'
copying libreco/utils/_similarities.cpp -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/utils/_similarities.pyx -> build/lib.linux-x86_64-3.8/libreco/utils
copying libreco/algorithms/_als.cpp -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/_als.pyx -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/_bpr.cpp -> build/lib.linux-x86_64-3.8/libreco/algorithms
copying libreco/algorithms/_bpr.pyx -> build/lib.linux-x86_64-3.8/libreco/algorithms
creating build/lib.linux-x86_64-3.8/serving/flask/knn
copying serving/flask/knn/knn_deploy.py -> build/lib.linux-x86_64-3.8/serving/flask/knn
copying serving/flask/knn/knn_request.py -> build/lib.linux-x86_64-3.8/serving/flask/knn
creating build/lib.linux-x86_64-3.8/serving/flask/tf
copying serving/flask/tf/tf_deploy.py -> build/lib.linux-x86_64-3.8/serving/flask/tf
copying serving/flask/tf/tf_request.py -> build/lib.linux-x86_64-3.8/serving/flask/tf
creating build/lib.linux-x86_64-3.8/serving/flask/vector
copying serving/flask/vector/vector_deploy.py -> build/lib.linux-x86_64-3.8/serving/flask/vector
copying serving/flask/vector/vector_request.py -> build/lib.linux-x86_64-3.8/serving/flask/vector
running build_ext
building 'libreco.algorithms._bpr' extension
creating build/temp.linux-x86_64-3.8
creating build/temp.linux-x86_64-3.8/libreco
creating build/temp.linux-x86_64-3.8/libreco/algorithms
x86_64-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.8/dist-packages/numpy/core/include -I/usr/include/python3.8 -c libreco/algorithms/_bpr.cpp -o build/temp.linux-x86_64-3.8/libreco/algorithms/_bpr.o -Wno-unused-function -Wno-maybe-uninitialized -O3 -ffast-math -fopenmp -std=c++11
In file included from /usr/local/lib/python3.8/dist-packages/numpy/core/include/numpy/ndarraytypes.h:1822,
from /usr/local/lib/python3.8/dist-packages/numpy/core/include/numpy/ndarrayobject.h:12,
from /usr/local/lib/python3.8/dist-packages/numpy/core/include/numpy/arrayobject.h:4,
from libreco/algorithms/_bpr.cpp:647:
/usr/local/lib/python3.8/dist-packages/numpy/core/include/numpy/npy_1_7_deprecated_api.h:17:2: warning: #warning "Using deprecated NumPy API, disable it with " "#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-Wcpp]
17 | #warning "Using deprecated NumPy API, disable it with " \
| ^~~~~~~
libreco/algorithms/_bpr.cpp:21438:276: error: macro "__Pyx_PyCode_New" requires 16 arguments, but only 15 given
21438 | __pyx_codeobj__30 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__29, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_Enum, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__30)) __PYX_ERR(2, 1, __pyx_L1_error)
| ^
libreco/algorithms/_bpr.cpp:363: note: macro "__Pyx_PyCode_New" defined here
363 | #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
|
libreco/algorithms/_bpr.cpp:24251:5: error: macro "__Pyx_PyCode_New" requires 16 arguments, but only 15 given
24251 | );
| ^
libreco/algorithms/_bpr.cpp:363: note: macro "__Pyx_PyCode_New" defined here
363 | #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
|
libreco/algorithms/_bpr.cpp: In function ‘int __Pyx_InitCachedConstants()’:
libreco/algorithms/_bpr.cpp:21438:34: error: ‘__Pyx_PyCode_New’ was not declared in this scope; did you mean ‘PyCode_New’?
21438 | __pyx_codeobj__30 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__29, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_stringsource, __pyx_n_s_pyx_unpickle_Enum, 1, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__30)) __PYX_ERR(2, 1, __pyx_L1_error)
| ^~~~~~~~~~~~~~~~
| PyCode_New
libreco/algorithms/_bpr.cpp: In function ‘PyCodeObject* __Pyx_CreateCodeObjectForTraceback(const char*, int, int, const char*)’:
libreco/algorithms/_bpr.cpp:24235:15: error: ‘__Pyx_PyCode_New’ was not declared in this scope; did you mean ‘PyCode_New’?
24235 | py_code = __Pyx_PyCode_New(
| ^~~~~~~~~~~~~~~~
| PyCode_New
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-2mcnke7y/librecommender_d83213db9c7a4cd5a0d3c09f24d0ed64/setup.py'"'"'; __file__='"'"'/tmp/pip-install-2mcnke7y/librecommender_d83213db9c7a4cd5a0d3c09f24d0ed64/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-12h0pm0t/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.8/LibRecommender Check the logs for full command output.
However, after I install cython with pip install cython, installing LibRecommender with pip worked.
Putting it out there in case anyone else has that problem.
Thanks for the library.
Thanks for your notice, I may add this information to the main README.