ntucllab / libact

Pool-based active learning in Python
http://libact.readthedocs.org/
BSD 2-Clause "Simplified" License
777 stars 175 forks source link

Error when numpy using 1.16.x #162

Closed pikachust8811 closed 5 years ago

pikachust8811 commented 5 years ago

I'm trying to build in Ubuntu 18.04 and I found the problem in numpy==1.16.x The numpy version 1.15.4 built successfully. Do you guys know how to solve it? Thanks!

Building wheels for collected packages: libact
  Building wheel for libact (setup.py): started
  Building wheel for libact (setup.py): finished with status 'error'
  ERROR: Complete output from command /usr/bin/python3.6 -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-b9acjzgj/libact/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-61erzhx6 --python-tag cp36:
  ERROR: Platform Detection: Linux. Link to liblapacke...
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-3.6
  creating build/lib.linux-x86_64-3.6/libact
  copying libact/__init__.py -> build/lib.linux-x86_64-3.6/libact
  creating build/lib.linux-x86_64-3.6/libact/base
  copying libact/base/__init__.py -> build/lib.linux-x86_64-3.6/libact/base
  copying libact/base/dataset.py -> build/lib.linux-x86_64-3.6/libact/base
  copying libact/base/interfaces.py -> build/lib.linux-x86_64-3.6/libact/base
  creating build/lib.linux-x86_64-3.6/libact/models
  copying libact/models/__init__.py -> build/lib.linux-x86_64-3.6/libact/models
  copying libact/models/svm.py -> build/lib.linux-x86_64-3.6/libact/models
  copying libact/models/logistic_regression.py -> build/lib.linux-x86_64-3.6/libact/models
  copying libact/models/sklearn_adapter.py -> build/lib.linux-x86_64-3.6/libact/models
  copying libact/models/perceptron.py -> build/lib.linux-x86_64-3.6/libact/models
  creating build/lib.linux-x86_64-3.6/libact/models/multilabel
  copying libact/models/multilabel/__init__.py -> build/lib.linux-x86_64-3.6/libact/models/multilabel
  copying libact/models/multilabel/dummy_clf.py -> build/lib.linux-x86_64-3.6/libact/models/multilabel
  copying libact/models/multilabel/binary_relevance.py -> build/lib.linux-x86_64-3.6/libact/models/multilabel
  creating build/lib.linux-x86_64-3.6/libact/labelers
  copying libact/labelers/ideal_labeler.py -> build/lib.linux-x86_64-3.6/libact/labelers
  copying libact/labelers/__init__.py -> build/lib.linux-x86_64-3.6/libact/labelers
  copying libact/labelers/interactive_labeler.py -> build/lib.linux-x86_64-3.6/libact/labelers
  creating build/lib.linux-x86_64-3.6/libact/query_strategies
  copying libact/query_strategies/active_learning_by_learning.py -> build/lib.linux-x86_64-3.6/libact/query_strategies
  copying libact/query_strategies/quire.py -> build/lib.linux-x86_64-3.6/libact/query_strategies
  copying libact/query_strategies/__init__.py -> build/lib.linux-x86_64-3.6/libact/query_strategies
  copying libact/query_strategies/random_sampling.py -> build/lib.linux-x86_64-3.6/libact/query_strategies
  copying libact/query_strategies/variance_reduction.py -> build/lib.linux-x86_64-3.6/libact/query_strategies
  copying libact/query_strategies/hintsvm.py -> build/lib.linux-x86_64-3.6/libact/query_strategies
  copying libact/query_strategies/query_by_committee.py -> build/lib.linux-x86_64-3.6/libact/query_strategies
  copying libact/query_strategies/uncertainty_sampling.py -> build/lib.linux-x86_64-3.6/libact/query_strategies
  copying libact/query_strategies/density_weighted_uncertainty_sampling.py -> build/lib.linux-x86_64-3.6/libact/query_strategies
  creating build/lib.linux-x86_64-3.6/libact/query_strategies/multilabel
  copying libact/query_strategies/multilabel/multilabel_with_auxiliary_learner.py -> build/lib.linux-x86_64-3.6/libact/query_strategies/multilabel
  copying libact/query_strategies/multilabel/adaptive_active_learning.py -> build/lib.linux-x86_64-3.6/libact/query_strategies/multilabel
  copying libact/query_strategies/multilabel/__init__.py -> build/lib.linux-x86_64-3.6/libact/query_strategies/multilabel
  copying libact/query_strategies/multilabel/maximum_margin_reduction.py -> build/lib.linux-x86_64-3.6/libact/query_strategies/multilabel
  copying libact/query_strategies/multilabel/binary_minimization.py -> build/lib.linux-x86_64-3.6/libact/query_strategies/multilabel
  creating build/lib.linux-x86_64-3.6/libact/query_strategies/multiclass
  copying libact/query_strategies/multiclass/__init__.py -> build/lib.linux-x86_64-3.6/libact/query_strategies/multiclass
  copying libact/query_strategies/multiclass/mdsp.py -> build/lib.linux-x86_64-3.6/libact/query_strategies/multiclass
  copying libact/query_strategies/multiclass/active_learning_with_cost_embedding.py -> build/lib.linux-x86_64-3.6/libact/query_strategies/multiclass
  copying libact/query_strategies/multiclass/expected_error_reduction.py -> build/lib.linux-x86_64-3.6/libact/query_strategies/multiclass
  copying libact/query_strategies/multiclass/hierarchical_sampling.py -> build/lib.linux-x86_64-3.6/libact/query_strategies/multiclass
  creating build/lib.linux-x86_64-3.6/libact/utils
  copying libact/utils/__init__.py -> build/lib.linux-x86_64-3.6/libact/utils
  running build_ext
  building 'libact.query_strategies._variance_reduction' extension
  Warning: Can't read registry to find the necessary compiler setting
  Make sure that Python modules winreg, win32api or win32con are installed.
  C compiler: x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC

  creating build/temp.linux-x86_64-3.6
  creating build/temp.linux-x86_64-3.6/libact
  creating build/temp.linux-x86_64-3.6/libact/query_strategies
  creating build/temp.linux-x86_64-3.6/libact/query_strategies/src
  creating build/temp.linux-x86_64-3.6/libact/query_strategies/src/variance_reduction
  compile options: '-I/usr/local/lib/python3.6/dist-packages/numpy/core/include -I/usr/include/lapacke -I/usr/include/python3.6m -c'
  extra options: '-std=c11'
  x86_64-linux-gnu-gcc: libact/query_strategies/src/variance_reduction/variance_reduction.c
  x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-x86_64-3.6/libact/query_strategies/src/variance_reduction/variance_reduction.o -o build/lib.linux-x86_64-3.6/libact/query_strategies/_variance_reduction.cpython-36m-x86_64-linux-gnu.so -llapacke -llapack -lblas
  /usr/bin/ld: cannot find -llapacke -llapack -lblas
  collect2: error: ld returned 1 exit status
  error: Command "x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-x86_64-3.6/libact/query_strategies/src/variance_reduction/variance_reduction.o -o build/lib.linux-x86_64-3.6/libact/query_strategies/_variance_reduction.cpython-36m-x86_64-linux-gnu.so -llapacke -llapack -lblas" failed with exit status 1
  ----------------------------------------
  ERROR: Failed building wheel for libact
yangarbiter commented 5 years ago

can you try it on the new pr #153

pikachust8811 commented 5 years ago

It works! I change the original installation pip install libact to pip install git+https://github.com/yangarbiter/libact.git.

Here is my environments and pip list.

OS: Ubuntu 18.04
Python 3.6.8

Package         Version
--------------- -------
cycler          0.10.0 
Cython          0.29.10
joblib          0.13.2 
kiwisolver      1.1.0  
libact          0.1.3  
matplotlib      3.1.0  
numpy           1.16.4 
pip             19.1.1 
pyparsing       2.4.0  
python-dateutil 2.8.0  
scikit-learn    0.21.2 
scipy           1.3.0  
setuptools      41.0.1 
six             1.12.0 
wheel           0.33.4 

Thanks a lot!