为备用 python 环境安装 dlib
Installing dlib for an alternate python environment
我已经在 ubuntu 20.04 macbook pro 3,1 上安装了 python 3.6 和默认的 python 3.8
$ sudo make altinstall
我正在尝试使用 pip 为虚拟 3.6 环境构建 dlib,但找不到 header Python.h(请参见下面的代码片段)。
$ pip install dlib
Collecting dlib
Using cached dlib-19.20.0.tar.gz (3.2 MB)
Building wheels for collected packages: dlib
Building wheel for dlib (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /home/simon/python/3.6/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-wegw26or/dlib/setup.py'"'"'; __file__='"'"'/tmp/pip-install-wegw26or/dlib/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-h8drewsj
cwd: /tmp/pip-install-wegw26or/dlib/
Complete output (238 lines):
running bdist_wheel
running build
running build_py
package init file 'dlib/__init__.py' not found (or not a regular file)
running build_ext
Building extension for Python 3.6.8 (default, Jun 15 2020, 10:18:50)
Invoking CMake setup: 'cmake /tmp/pip-install-wegw26or/dlib/tools/python -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/tmp/pip-install-wegw26or/dlib/build/lib.linux-x86_64-3.6 -DPYTHON_EXECUTABLE=/home/simon/python/3.6/bin/python -DCMAKE_BUILD_TYPE=Release'
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PythonInterp: /home/simon/python/3.6/bin/python (found version "3.6.8")
-- Found PythonLibs: /usr/local/lib/libpython3.6m.a
-- Performing Test HAS_CPP14_FLAG
-- Performing Test HAS_CPP14_FLAG - Success
-- pybind11 v2.2.2
-- Using CMake version: 3.16.3
-- Compiling dlib version: 19.20.0
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found X11: /usr/include
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found system copy of libpng: /usr/lib/x86_64-linux-gnu/libpng.so;/usr/lib/x86_64-linux-gnu/libz.so
-- Searching for BLAS and LAPACK
-- Searching for BLAS and LAPACK
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1")
-- Checking for module 'cblas'
-- No package 'cblas' found
-- Checking for module 'lapack'
-- Found lapack, version 0.3.8+ds
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of void*
-- Check size of void* - done
-- Found OpenBLAS library
-- Looking for sgetrf_single
-- Looking for sgetrf_single - found
-- Using OpenBLAS's built in LAPACK
-- Looking for cblas_ddot
-- Looking for cblas_ddot - found
-- Looking for sgesv
-- Looking for sgesv - not found
-- Looking for sgesv_
-- Looking for sgesv_ - not found
CUDA_TOOLKIT_ROOT_DIR not found or specified
-- Could NOT find CUDA (missing: CUDA_TOOLKIT_ROOT_DIR CUDA_NVCC_EXECUTABLE CUDA_INCLUDE_DIRS CUDA_CUDART_LIBRARY) (Required is at least version "7.5")
-- DID NOT FIND CUDA
-- Disabling CUDA support for dlib. DLIB WILL NOT USE CUDA
-- C++11 activated.
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/pip-install-wegw26or/dlib/build/temp.linux-x86_64-3.6
Invoking CMake build: 'cmake --build . --config Release -- -j1'
Scanning dependencies of target dlib
[ 0%] Building CXX object dlib_build/CMakeFiles/dlib.dir/base64/base64_kernel_1.cpp.o
[ 1%] Building CXX object dlib_build/CMakeFiles/dlib.dir/bigint/bigint_kernel_1.cpp.o
[ 2%] Building CXX object dlib_build/CMakeFiles/dlib.dir/bigint/bigint_kernel_2.cpp.o
[ 3%] Building CXX object dlib_build/CMakeFiles/dlib.dir/bit_stream/bit_stream_kernel_1.cpp.o
[ 3%] Building CXX object dlib_build/CMakeFiles/dlib.dir/entropy_decoder/entropy_decoder_kernel_1.cpp.o
[ 4%] Building CXX object dlib_build/CMakeFiles/dlib.dir/entropy_decoder/entropy_decoder_kernel_2.cpp.o
[ 5%] Building CXX object dlib_build/CMakeFiles/dlib.dir/entropy_encoder/entropy_encoder_kernel_1.cpp.o
[ 6%] Building CXX object dlib_build/CMakeFiles/dlib.dir/entropy_encoder/entropy_encoder_kernel_2.cpp.o
[ 6%] Building CXX object dlib_build/CMakeFiles/dlib.dir/md5/md5_kernel_1.cpp.o
[ 7%] Building CXX object dlib_build/CMakeFiles/dlib.dir/tokenizer/tokenizer_kernel_1.cpp.o
[ 8%] Building CXX object dlib_build/CMakeFiles/dlib.dir/unicode/unicode.cpp.o
[ 9%] Building CXX object dlib_build/CMakeFiles/dlib.dir/test_for_odr_violations.cpp.o
[ 10%] Building CXX object dlib_build/CMakeFiles/dlib.dir/sockets/sockets_kernel_1.cpp.o
[ 10%] Building CXX object dlib_build/CMakeFiles/dlib.dir/bsp/bsp.cpp.o
[ 11%] Building CXX object dlib_build/CMakeFiles/dlib.dir/dir_nav/dir_nav_kernel_1.cpp.o
[ 12%] Building CXX object dlib_build/CMakeFiles/dlib.dir/dir_nav/dir_nav_kernel_2.cpp.o
[ 13%] Building CXX object dlib_build/CMakeFiles/dlib.dir/dir_nav/dir_nav_extensions.cpp.o
[ 13%] Building CXX object dlib_build/CMakeFiles/dlib.dir/linker/linker_kernel_1.cpp.o
[ 14%] Building CXX object dlib_build/CMakeFiles/dlib.dir/logger/extra_logger_headers.cpp.o
[ 15%] Building CXX object dlib_build/CMakeFiles/dlib.dir/logger/logger_kernel_1.cpp.o
[ 16%] Building CXX object dlib_build/CMakeFiles/dlib.dir/logger/logger_config_file.cpp.o
[ 16%] Building CXX object dlib_build/CMakeFiles/dlib.dir/misc_api/misc_api_kernel_1.cpp.o
[ 17%] Building CXX object dlib_build/CMakeFiles/dlib.dir/misc_api/misc_api_kernel_2.cpp.o
[ 18%] Building CXX object dlib_build/CMakeFiles/dlib.dir/sockets/sockets_extensions.cpp.o
[ 19%] Building CXX object dlib_build/CMakeFiles/dlib.dir/sockets/sockets_kernel_2.cpp.o
[ 20%] Building CXX object dlib_build/CMakeFiles/dlib.dir/sockstreambuf/sockstreambuf.cpp.o
[ 20%] Building CXX object dlib_build/CMakeFiles/dlib.dir/sockstreambuf/sockstreambuf_unbuffered.cpp.o
[ 21%] Building CXX object dlib_build/CMakeFiles/dlib.dir/server/server_kernel.cpp.o
[ 22%] Building CXX object dlib_build/CMakeFiles/dlib.dir/server/server_iostream.cpp.o
[ 23%] Building CXX object dlib_build/CMakeFiles/dlib.dir/server/server_http.cpp.o
[ 23%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/multithreaded_object_extension.cpp.o
[ 24%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/threaded_object_extension.cpp.o
[ 25%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/threads_kernel_1.cpp.o
[ 26%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/threads_kernel_2.cpp.o
[ 26%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/threads_kernel_shared.cpp.o
[ 27%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/thread_pool_extension.cpp.o
[ 28%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/async.cpp.o
[ 29%] Building CXX object dlib_build/CMakeFiles/dlib.dir/timer/timer.cpp.o
[ 30%] Building CXX object dlib_build/CMakeFiles/dlib.dir/stack_trace.cpp.o
[ 30%] Building CXX object dlib_build/CMakeFiles/dlib.dir/cuda/cpu_dlib.cpp.o
[ 31%] Building CXX object dlib_build/CMakeFiles/dlib.dir/cuda/tensor_tools.cpp.o
[ 32%] Building CXX object dlib_build/CMakeFiles/dlib.dir/data_io/image_dataset_metadata.cpp.o
[ 33%] Building CXX object dlib_build/CMakeFiles/dlib.dir/data_io/mnist.cpp.o
[ 33%] Building CXX object dlib_build/CMakeFiles/dlib.dir/global_optimization/global_function_search.cpp.o
[ 34%] Building CXX object dlib_build/CMakeFiles/dlib.dir/filtering/kalman_filter.cpp.o
[ 35%] Building CXX object dlib_build/CMakeFiles/dlib.dir/svm/auto.cpp.o
[ 36%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/fonts.cpp.o
[ 36%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/widgets.cpp.o
[ 37%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/drawable.cpp.o
[ 38%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/canvas_drawing.cpp.o
[ 39%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/style.cpp.o
[ 40%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/base_widgets.cpp.o
[ 40%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_core/gui_core_kernel_1.cpp.o
[ 41%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_core/gui_core_kernel_2.cpp.o
[ 42%] Building CXX object dlib_build/CMakeFiles/dlib.dir/image_loader/png_loader.cpp.o
[ 43%] Building CXX object dlib_build/CMakeFiles/dlib.dir/image_saver/save_png.cpp.o
[ 43%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jaricom.c.o
[ 44%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcapimin.c.o
[ 45%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcapistd.c.o
[ 46%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcarith.c.o
[ 46%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jccoefct.c.o
[ 47%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jccolor.c.o
[ 48%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcdctmgr.c.o
[ 49%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jchuff.c.o
[ 50%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcinit.c.o
[ 50%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcmainct.c.o
[ 51%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcmarker.c.o
[ 52%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcmaster.c.o
[ 53%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcomapi.c.o
[ 53%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcparam.c.o
[ 54%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcprepct.c.o
[ 55%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcsample.c.o
[ 56%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdapimin.c.o
[ 56%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdapistd.c.o
[ 57%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdarith.c.o
[ 58%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdatadst.c.o
[ 59%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdatasrc.c.o
[ 60%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdcoefct.c.o
[ 60%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdcolor.c.o
[ 61%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jddctmgr.c.o
[ 62%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdhuff.c.o
[ 63%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdinput.c.o
[ 63%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdmainct.c.o
[ 64%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdmarker.c.o
[ 65%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdmaster.c.o
[ 66%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdmerge.c.o
[ 66%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdpostct.c.o
[ 67%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdsample.c.o
[ 68%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jerror.c.o
[ 69%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jfdctflt.c.o
[ 70%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jfdctfst.c.o
[ 70%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jfdctint.c.o
[ 71%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jidctflt.c.o
[ 72%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jidctfst.c.o
[ 73%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jidctint.c.o
[ 73%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jmemmgr.c.o
[ 74%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jmemnobs.c.o
[ 75%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jquant1.c.o
[ 76%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jquant2.c.o
[ 76%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jutils.c.o
[ 77%] Building CXX object dlib_build/CMakeFiles/dlib.dir/image_loader/jpeg_loader.cpp.o
[ 78%] Building CXX object dlib_build/CMakeFiles/dlib.dir/image_saver/save_jpeg.cpp.o
[ 79%] Linking CXX static library libdlib.a
[ 79%] Built target dlib
Scanning dependencies of target dlib_python
[ 80%] Building CXX object CMakeFiles/dlib_python.dir/src/dlib.cpp.o
In file included from /tmp/pip-install-wegw26or/dlib/dlib/external/pybind11/include/pybind11/pytypes.h:12,
from /tmp/pip-install-wegw26or/dlib/dlib/external/pybind11/include/pybind11/cast.h:13,
from /tmp/pip-install-wegw26or/dlib/dlib/external/pybind11/include/pybind11/attr.h:13,
from /tmp/pip-install-wegw26or/dlib/dlib/external/pybind11/include/pybind11/pybind11.h:43,
from /tmp/pip-install-wegw26or/dlib/dlib/../dlib/python/pybind_utils.h:6,
from /tmp/pip-install-wegw26or/dlib/dlib/../dlib/python.h:6,
from /tmp/pip-install-wegw26or/dlib/tools/python/src/opaque_types.h:6,
from /tmp/pip-install-wegw26or/dlib/tools/python/src/dlib.cpp:4:
/tmp/pip-install-wegw26or/dlib/dlib/external/pybind11/include/pybind11/detail/common.h:111:10: fatal error: Python.h: No such file or directory
111 | #include <Python.h>
| ^~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/dlib_python.dir/build.make:63: CMakeFiles/dlib_python.dir/src/dlib.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:117: CMakeFiles/dlib_python.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-install-wegw26or/dlib/setup.py", line 261, in <module>
'Topic :: Software Development',
File "/home/simon/python/3.6/lib/python3.6/site-packages/setuptools/__init__.py", line 143, in setup
return distutils.core.setup(**attrs)
File "/usr/src/Python-3.6.8/Lib/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/src/Python-3.6.8/Lib/distutils/dist.py", line 955, in run_commands
self.run_command(cmd)
File "/usr/src/Python-3.6.8/Lib/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/home/simon/python/3.6/lib/python3.6/site-packages/wheel/bdist_wheel.py", line 223, in run
self.run_command('build')
File "/usr/src/Python-3.6.8/Lib/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/src/Python-3.6.8/Lib/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/src/Python-3.6.8/Lib/distutils/command/build.py", line 135, in run
self.run_command(cmd_name)
File "/usr/src/Python-3.6.8/Lib/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/src/Python-3.6.8/Lib/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/tmp/pip-install-wegw26or/dlib/setup.py", line 135, in run
self.build_extension(ext)
File "/tmp/pip-install-wegw26or/dlib/setup.py", line 175, in build_extension
subprocess.check_call(cmake_build, cwd=build_folder)
File "/usr/src/Python-3.6.8/Lib/subprocess.py", line 311, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--', '-j1']' returned non-zero exit status 2.
----------------------------------------
ERROR: Failed building wheel for dlib
如果我安装 dlib v19.8.2,我会得到同样的错误。
如果我找到 Python.h 我得到
$ locate Python.h
/home/simon/Python-3.6.8/Include/Python.h
/usr/include/python3.8/Python.h
/usr/local/include/python3.6m/Python.h
/usr/src/Python-3.6.8/Include/Python.h
/usr/src/Python-3.6.9/Include/Python.h
我已经尝试安装 libpython-3.6 和 python-3.6 但得到:
$ sudo apt-get install libpython3.6-dev python3.6-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libpython3.6-dev
E: Couldn't find any package by glob 'libpython3.6-dev'
E: Couldn't find any package by regex 'libpython3.6-dev'
E: Unable to locate package python3.6-dev
E: Couldn't find any package by glob 'python3.6-dev'
E: Couldn't find any package by regex 'python3.6-dev'
但无论如何,我的印象是它已被 python3.8-dev 取代,所以即使我找到了这些,我也无法安装它们:
$ sudo apt-get install python3-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
python3-dev is already the newest version (3.8.2-0ubuntu2).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
当我在 python 3.8 下构建 dlib 时它可以工作,但是由于其他原因我需要使用 python 3.6。请问如何在虚拟 3.6 环境中使用我的 3.6 Python.h header 构建 dlib?
提前感谢您的建议!
我建议为此使用 conda。您将避免担心环境设置。当您使用 conda activate
激活某个环境时(请参见下文),所有相关的环境路径都指向 conda 环境的目录。
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
sudo chmod 755 Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh
conda create -n py36 python=3.6.10
# you should initialize conda during installation and restart shell after installation to get started with conda or run $ source .bashrc from you home directory
conda activate py36
pip install dlib
当然是前面设置的CMake
和g++
(或其他编译器)
我已经在 ubuntu 20.04 macbook pro 3,1 上安装了 python 3.6 和默认的 python 3.8
$ sudo make altinstall
我正在尝试使用 pip 为虚拟 3.6 环境构建 dlib,但找不到 header Python.h(请参见下面的代码片段)。
$ pip install dlib
Collecting dlib
Using cached dlib-19.20.0.tar.gz (3.2 MB)
Building wheels for collected packages: dlib
Building wheel for dlib (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /home/simon/python/3.6/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-wegw26or/dlib/setup.py'"'"'; __file__='"'"'/tmp/pip-install-wegw26or/dlib/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-h8drewsj
cwd: /tmp/pip-install-wegw26or/dlib/
Complete output (238 lines):
running bdist_wheel
running build
running build_py
package init file 'dlib/__init__.py' not found (or not a regular file)
running build_ext
Building extension for Python 3.6.8 (default, Jun 15 2020, 10:18:50)
Invoking CMake setup: 'cmake /tmp/pip-install-wegw26or/dlib/tools/python -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/tmp/pip-install-wegw26or/dlib/build/lib.linux-x86_64-3.6 -DPYTHON_EXECUTABLE=/home/simon/python/3.6/bin/python -DCMAKE_BUILD_TYPE=Release'
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PythonInterp: /home/simon/python/3.6/bin/python (found version "3.6.8")
-- Found PythonLibs: /usr/local/lib/libpython3.6m.a
-- Performing Test HAS_CPP14_FLAG
-- Performing Test HAS_CPP14_FLAG - Success
-- pybind11 v2.2.2
-- Using CMake version: 3.16.3
-- Compiling dlib version: 19.20.0
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found X11: /usr/include
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found system copy of libpng: /usr/lib/x86_64-linux-gnu/libpng.so;/usr/lib/x86_64-linux-gnu/libz.so
-- Searching for BLAS and LAPACK
-- Searching for BLAS and LAPACK
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1")
-- Checking for module 'cblas'
-- No package 'cblas' found
-- Checking for module 'lapack'
-- Found lapack, version 0.3.8+ds
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of void*
-- Check size of void* - done
-- Found OpenBLAS library
-- Looking for sgetrf_single
-- Looking for sgetrf_single - found
-- Using OpenBLAS's built in LAPACK
-- Looking for cblas_ddot
-- Looking for cblas_ddot - found
-- Looking for sgesv
-- Looking for sgesv - not found
-- Looking for sgesv_
-- Looking for sgesv_ - not found
CUDA_TOOLKIT_ROOT_DIR not found or specified
-- Could NOT find CUDA (missing: CUDA_TOOLKIT_ROOT_DIR CUDA_NVCC_EXECUTABLE CUDA_INCLUDE_DIRS CUDA_CUDART_LIBRARY) (Required is at least version "7.5")
-- DID NOT FIND CUDA
-- Disabling CUDA support for dlib. DLIB WILL NOT USE CUDA
-- C++11 activated.
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/pip-install-wegw26or/dlib/build/temp.linux-x86_64-3.6
Invoking CMake build: 'cmake --build . --config Release -- -j1'
Scanning dependencies of target dlib
[ 0%] Building CXX object dlib_build/CMakeFiles/dlib.dir/base64/base64_kernel_1.cpp.o
[ 1%] Building CXX object dlib_build/CMakeFiles/dlib.dir/bigint/bigint_kernel_1.cpp.o
[ 2%] Building CXX object dlib_build/CMakeFiles/dlib.dir/bigint/bigint_kernel_2.cpp.o
[ 3%] Building CXX object dlib_build/CMakeFiles/dlib.dir/bit_stream/bit_stream_kernel_1.cpp.o
[ 3%] Building CXX object dlib_build/CMakeFiles/dlib.dir/entropy_decoder/entropy_decoder_kernel_1.cpp.o
[ 4%] Building CXX object dlib_build/CMakeFiles/dlib.dir/entropy_decoder/entropy_decoder_kernel_2.cpp.o
[ 5%] Building CXX object dlib_build/CMakeFiles/dlib.dir/entropy_encoder/entropy_encoder_kernel_1.cpp.o
[ 6%] Building CXX object dlib_build/CMakeFiles/dlib.dir/entropy_encoder/entropy_encoder_kernel_2.cpp.o
[ 6%] Building CXX object dlib_build/CMakeFiles/dlib.dir/md5/md5_kernel_1.cpp.o
[ 7%] Building CXX object dlib_build/CMakeFiles/dlib.dir/tokenizer/tokenizer_kernel_1.cpp.o
[ 8%] Building CXX object dlib_build/CMakeFiles/dlib.dir/unicode/unicode.cpp.o
[ 9%] Building CXX object dlib_build/CMakeFiles/dlib.dir/test_for_odr_violations.cpp.o
[ 10%] Building CXX object dlib_build/CMakeFiles/dlib.dir/sockets/sockets_kernel_1.cpp.o
[ 10%] Building CXX object dlib_build/CMakeFiles/dlib.dir/bsp/bsp.cpp.o
[ 11%] Building CXX object dlib_build/CMakeFiles/dlib.dir/dir_nav/dir_nav_kernel_1.cpp.o
[ 12%] Building CXX object dlib_build/CMakeFiles/dlib.dir/dir_nav/dir_nav_kernel_2.cpp.o
[ 13%] Building CXX object dlib_build/CMakeFiles/dlib.dir/dir_nav/dir_nav_extensions.cpp.o
[ 13%] Building CXX object dlib_build/CMakeFiles/dlib.dir/linker/linker_kernel_1.cpp.o
[ 14%] Building CXX object dlib_build/CMakeFiles/dlib.dir/logger/extra_logger_headers.cpp.o
[ 15%] Building CXX object dlib_build/CMakeFiles/dlib.dir/logger/logger_kernel_1.cpp.o
[ 16%] Building CXX object dlib_build/CMakeFiles/dlib.dir/logger/logger_config_file.cpp.o
[ 16%] Building CXX object dlib_build/CMakeFiles/dlib.dir/misc_api/misc_api_kernel_1.cpp.o
[ 17%] Building CXX object dlib_build/CMakeFiles/dlib.dir/misc_api/misc_api_kernel_2.cpp.o
[ 18%] Building CXX object dlib_build/CMakeFiles/dlib.dir/sockets/sockets_extensions.cpp.o
[ 19%] Building CXX object dlib_build/CMakeFiles/dlib.dir/sockets/sockets_kernel_2.cpp.o
[ 20%] Building CXX object dlib_build/CMakeFiles/dlib.dir/sockstreambuf/sockstreambuf.cpp.o
[ 20%] Building CXX object dlib_build/CMakeFiles/dlib.dir/sockstreambuf/sockstreambuf_unbuffered.cpp.o
[ 21%] Building CXX object dlib_build/CMakeFiles/dlib.dir/server/server_kernel.cpp.o
[ 22%] Building CXX object dlib_build/CMakeFiles/dlib.dir/server/server_iostream.cpp.o
[ 23%] Building CXX object dlib_build/CMakeFiles/dlib.dir/server/server_http.cpp.o
[ 23%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/multithreaded_object_extension.cpp.o
[ 24%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/threaded_object_extension.cpp.o
[ 25%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/threads_kernel_1.cpp.o
[ 26%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/threads_kernel_2.cpp.o
[ 26%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/threads_kernel_shared.cpp.o
[ 27%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/thread_pool_extension.cpp.o
[ 28%] Building CXX object dlib_build/CMakeFiles/dlib.dir/threads/async.cpp.o
[ 29%] Building CXX object dlib_build/CMakeFiles/dlib.dir/timer/timer.cpp.o
[ 30%] Building CXX object dlib_build/CMakeFiles/dlib.dir/stack_trace.cpp.o
[ 30%] Building CXX object dlib_build/CMakeFiles/dlib.dir/cuda/cpu_dlib.cpp.o
[ 31%] Building CXX object dlib_build/CMakeFiles/dlib.dir/cuda/tensor_tools.cpp.o
[ 32%] Building CXX object dlib_build/CMakeFiles/dlib.dir/data_io/image_dataset_metadata.cpp.o
[ 33%] Building CXX object dlib_build/CMakeFiles/dlib.dir/data_io/mnist.cpp.o
[ 33%] Building CXX object dlib_build/CMakeFiles/dlib.dir/global_optimization/global_function_search.cpp.o
[ 34%] Building CXX object dlib_build/CMakeFiles/dlib.dir/filtering/kalman_filter.cpp.o
[ 35%] Building CXX object dlib_build/CMakeFiles/dlib.dir/svm/auto.cpp.o
[ 36%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/fonts.cpp.o
[ 36%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/widgets.cpp.o
[ 37%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/drawable.cpp.o
[ 38%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/canvas_drawing.cpp.o
[ 39%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/style.cpp.o
[ 40%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_widgets/base_widgets.cpp.o
[ 40%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_core/gui_core_kernel_1.cpp.o
[ 41%] Building CXX object dlib_build/CMakeFiles/dlib.dir/gui_core/gui_core_kernel_2.cpp.o
[ 42%] Building CXX object dlib_build/CMakeFiles/dlib.dir/image_loader/png_loader.cpp.o
[ 43%] Building CXX object dlib_build/CMakeFiles/dlib.dir/image_saver/save_png.cpp.o
[ 43%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jaricom.c.o
[ 44%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcapimin.c.o
[ 45%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcapistd.c.o
[ 46%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcarith.c.o
[ 46%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jccoefct.c.o
[ 47%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jccolor.c.o
[ 48%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcdctmgr.c.o
[ 49%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jchuff.c.o
[ 50%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcinit.c.o
[ 50%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcmainct.c.o
[ 51%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcmarker.c.o
[ 52%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcmaster.c.o
[ 53%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcomapi.c.o
[ 53%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcparam.c.o
[ 54%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcprepct.c.o
[ 55%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jcsample.c.o
[ 56%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdapimin.c.o
[ 56%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdapistd.c.o
[ 57%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdarith.c.o
[ 58%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdatadst.c.o
[ 59%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdatasrc.c.o
[ 60%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdcoefct.c.o
[ 60%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdcolor.c.o
[ 61%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jddctmgr.c.o
[ 62%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdhuff.c.o
[ 63%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdinput.c.o
[ 63%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdmainct.c.o
[ 64%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdmarker.c.o
[ 65%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdmaster.c.o
[ 66%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdmerge.c.o
[ 66%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdpostct.c.o
[ 67%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jdsample.c.o
[ 68%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jerror.c.o
[ 69%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jfdctflt.c.o
[ 70%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jfdctfst.c.o
[ 70%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jfdctint.c.o
[ 71%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jidctflt.c.o
[ 72%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jidctfst.c.o
[ 73%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jidctint.c.o
[ 73%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jmemmgr.c.o
[ 74%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jmemnobs.c.o
[ 75%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jquant1.c.o
[ 76%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jquant2.c.o
[ 76%] Building C object dlib_build/CMakeFiles/dlib.dir/external/libjpeg/jutils.c.o
[ 77%] Building CXX object dlib_build/CMakeFiles/dlib.dir/image_loader/jpeg_loader.cpp.o
[ 78%] Building CXX object dlib_build/CMakeFiles/dlib.dir/image_saver/save_jpeg.cpp.o
[ 79%] Linking CXX static library libdlib.a
[ 79%] Built target dlib
Scanning dependencies of target dlib_python
[ 80%] Building CXX object CMakeFiles/dlib_python.dir/src/dlib.cpp.o
In file included from /tmp/pip-install-wegw26or/dlib/dlib/external/pybind11/include/pybind11/pytypes.h:12,
from /tmp/pip-install-wegw26or/dlib/dlib/external/pybind11/include/pybind11/cast.h:13,
from /tmp/pip-install-wegw26or/dlib/dlib/external/pybind11/include/pybind11/attr.h:13,
from /tmp/pip-install-wegw26or/dlib/dlib/external/pybind11/include/pybind11/pybind11.h:43,
from /tmp/pip-install-wegw26or/dlib/dlib/../dlib/python/pybind_utils.h:6,
from /tmp/pip-install-wegw26or/dlib/dlib/../dlib/python.h:6,
from /tmp/pip-install-wegw26or/dlib/tools/python/src/opaque_types.h:6,
from /tmp/pip-install-wegw26or/dlib/tools/python/src/dlib.cpp:4:
/tmp/pip-install-wegw26or/dlib/dlib/external/pybind11/include/pybind11/detail/common.h:111:10: fatal error: Python.h: No such file or directory
111 | #include <Python.h>
| ^~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/dlib_python.dir/build.make:63: CMakeFiles/dlib_python.dir/src/dlib.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:117: CMakeFiles/dlib_python.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-install-wegw26or/dlib/setup.py", line 261, in <module>
'Topic :: Software Development',
File "/home/simon/python/3.6/lib/python3.6/site-packages/setuptools/__init__.py", line 143, in setup
return distutils.core.setup(**attrs)
File "/usr/src/Python-3.6.8/Lib/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/src/Python-3.6.8/Lib/distutils/dist.py", line 955, in run_commands
self.run_command(cmd)
File "/usr/src/Python-3.6.8/Lib/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/home/simon/python/3.6/lib/python3.6/site-packages/wheel/bdist_wheel.py", line 223, in run
self.run_command('build')
File "/usr/src/Python-3.6.8/Lib/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/src/Python-3.6.8/Lib/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/usr/src/Python-3.6.8/Lib/distutils/command/build.py", line 135, in run
self.run_command(cmd_name)
File "/usr/src/Python-3.6.8/Lib/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/src/Python-3.6.8/Lib/distutils/dist.py", line 974, in run_command
cmd_obj.run()
File "/tmp/pip-install-wegw26or/dlib/setup.py", line 135, in run
self.build_extension(ext)
File "/tmp/pip-install-wegw26or/dlib/setup.py", line 175, in build_extension
subprocess.check_call(cmake_build, cwd=build_folder)
File "/usr/src/Python-3.6.8/Lib/subprocess.py", line 311, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--', '-j1']' returned non-zero exit status 2.
----------------------------------------
ERROR: Failed building wheel for dlib
如果我安装 dlib v19.8.2,我会得到同样的错误。
如果我找到 Python.h 我得到
$ locate Python.h
/home/simon/Python-3.6.8/Include/Python.h
/usr/include/python3.8/Python.h
/usr/local/include/python3.6m/Python.h
/usr/src/Python-3.6.8/Include/Python.h
/usr/src/Python-3.6.9/Include/Python.h
我已经尝试安装 libpython-3.6 和 python-3.6 但得到:
$ sudo apt-get install libpython3.6-dev python3.6-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libpython3.6-dev
E: Couldn't find any package by glob 'libpython3.6-dev'
E: Couldn't find any package by regex 'libpython3.6-dev'
E: Unable to locate package python3.6-dev
E: Couldn't find any package by glob 'python3.6-dev'
E: Couldn't find any package by regex 'python3.6-dev'
但无论如何,我的印象是它已被 python3.8-dev 取代,所以即使我找到了这些,我也无法安装它们:
$ sudo apt-get install python3-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
python3-dev is already the newest version (3.8.2-0ubuntu2).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
当我在 python 3.8 下构建 dlib 时它可以工作,但是由于其他原因我需要使用 python 3.6。请问如何在虚拟 3.6 环境中使用我的 3.6 Python.h header 构建 dlib?
提前感谢您的建议!
我建议为此使用 conda。您将避免担心环境设置。当您使用 conda activate
激活某个环境时(请参见下文),所有相关的环境路径都指向 conda 环境的目录。
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
sudo chmod 755 Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh
conda create -n py36 python=3.6.10
# you should initialize conda during installation and restart shell after installation to get started with conda or run $ source .bashrc from you home directory
conda activate py36
pip install dlib
当然是前面设置的CMake
和g++
(或其他编译器)