New issue 2677: PyBuffer_ToContiguous: undeclared identifier when building `dlib` https://bitbucket.org/pypy/pypy/issues/2677/pybuffer_tocontiguous-undeclared
Jacek Szpot: Hey guys! > **TL;DR:** `undeclared identifier 'PyBuffer_ToContiguous'` when trying to > build `dlib` I bumped into this when trying to install `dlib` (`pip3 install dlib`): ``` In file included from /private/var/folders/xq/btzncyq941bfxkwd_xb_sjh80000gn/T/pip-build-rxh9qq8v/dlib/tools/python/src/matrix.cpp:4: In file included from /private/var/folders/xq/btzncyq941bfxkwd_xb_sjh80000gn/T/pip-build-rxh9qq8v/dlib/dlib/../dlib/python.h:9: /private/var/folders/xq/btzncyq941bfxkwd_xb_sjh80000gn/T/pip-build-rxh9qq8v/dlib/dlib/../dlib/python/numpy.h:109:17: error: use of undeclared identifier 'PyBuffer_ToContiguous' if (PyBuffer_ToContiguous(&contig_buf[0], &pybuf, pybuf.len, 'C')) ^ /private/var/folders/xq/btzncyq941bfxkwd_xb_sjh80000gn/T/pip-build-rxh9qq8v/dlib/dlib/../dlib/python/numpy_image.h:22:9: note: in instantiation of function template specialization 'get_numpy_ndarray_parts<unsigned char, 2>' requested here get_numpy_ndarray_parts(img, _data, _contig_buf, shape); ^ In file included from /private/var/folders/xq/btzncyq941bfxkwd_xb_sjh80000gn/T/pip-build-rxh9qq8v/dlib/tools/python/src/matrix.cpp:4: In file included from /private/var/folders/xq/btzncyq941bfxkwd_xb_sjh80000gn/T/pip-build-rxh9qq8v/dlib/dlib/../dlib/python.h:9: /private/var/folders/xq/btzncyq941bfxkwd_xb_sjh80000gn/T/pip-build-rxh9qq8v/dlib/dlib/../dlib/python/numpy.h:109:17: error: use of undeclared identifier 'PyBuffer_ToContiguous' if (PyBuffer_ToContiguous(&contig_buf[0], &pybuf, pybuf.len, 'C')) ^ /private/var/folders/xq/btzncyq941bfxkwd_xb_sjh80000gn/T/pip-build-rxh9qq8v/dlib/dlib/../dlib/python/numpy_image.h:76:9: note: in instantiation of function template specialization 'get_numpy_ndarray_parts<dlib::rgb_pixel, 3>' requested here get_numpy_ndarray_parts(img, _data, _contig_buf, shape); ^ 2 errors generated. make[2]: *** [CMakeFiles/dlib_.dir/src/matrix.cpp.o] Error 1 make[1]: *** [CMakeFiles/dlib_.dir/all] Error 2 make: *** [all] Error 2 error: cmake build failed! ``` More details: ``` Python 3.5.3 (d72f9800a42b46a8056951b1da2426d2c2d8d502, Oct 07 2017, 08:21:16) [PyPy 5.9.0-beta0 with GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.37)] on darwin ``` The CPython interpreter has this symbol defined somewhere in `abstract.h` - I see that for my `pypy3` installation (and inside a virtualenv), the `include/abstract.h` is way shorter and only contains like two symbols. Is this simply something that's not yet implemented, or am I miss something? Let me know if you need more info. _______________________________________________ pypy-issue mailing list pypy-issue@python.org https://mail.python.org/mailman/listinfo/pypy-issue