DeepGraphLearning / graphvite

GraphVite: A General and High-performance Graph Embedding System
https://graphvite.io
Apache License 2.0
1.21k stars 151 forks source link

When run make, error happened related to pybind #94

Open kediwu0331 opened 2 years ago

kediwu0331 commented 2 years ago

I was trying to install the package from source. I used miniconda3. After install the required packages, I run cmake -DNO_FAISS=True .. to get rid of some bug related to faiss.

Then I run make in build directory.

After it complies for a while, the command failed with following error:

`/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1001:97: error: template argument 2 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1001:97: error: template argument 3 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1001:97: error: template argument 4 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1001:97: error: template argument 5 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1001:97: error: template argument 6 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1001:99: error: template argument 1 is invalid return detail::npy_format_descriptor<typename std::remove_cv::type>::format();

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1001:108: error: expected parameter pack before ‘...’ return detail::npy_format_descriptor<typename std::remove_cv::type>::format();

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1001:117: error: template argument 1 is invalid return detail::npy_format_descriptor<typename std::remove_cv::type>::format();

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1001:117: error: template argument 2 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1001:117: error: template argument 3 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1002:49: error: expansion pattern ‘std::is_standard_layout<_Tp>::value’ contains no argument packs }

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1002:92: error: expansion pattern ‘std::is_trivially_copyable<_Tp>::value’ contains no argument packs }

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1003:25: error: expansion pattern ‘std::is_reference<_Tp>’ contains no argument packs };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1003:48: error: expansion pattern ‘std::is_array<_Tp>’ contains no argument packs };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1003:78: error: expansion pattern ‘pybind11::detail::is_std_array’ contains no argument packs };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1003:106: error: expansion pattern ‘std::is_arithmetic<_Tp>’ contains no argument packs };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:6: error: expansion pattern ‘pybind11::detail::is_complex’ contains no argument packs

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:28: error: expansion pattern ‘std::is_enum<_Tp>’ contains no argument packs

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:31: error: template argument 1 is invalid

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:31: error: template argument 2 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:31: error: template argument 3 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:31: error: template argument 4 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:31: error: template argument 5 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:31: error: template argument 6 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:33: error: template argument 1 is invalid

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:42: error: expected parameter pack before ‘...’

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:45: error: template argument 2 is invalid

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:45: error: template argument 3 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:45: error: template argument 4 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:47: error: template argument 1 is invalid

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:47: error: template argument 2 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:62: error: template argument 1 is invalid

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1004:64: error: template argument 2 is invalid

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1048:101: error: expansion pattern ‘std::is_standard_layout<_Tp>::value’ contains no argument packs struct compare_buffer_info<T, detail::enable_if_t<detail::is_pod_struct::value>> {

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1049:16: error: expansion pattern ‘std::is_trivially_copyable<_Tp>::value’ contains no argument packs static bool compare(const buffer_info& b) {

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1049:61: error: expansion pattern ‘std::is_reference<_Tp>’ contains no argument packs static bool compare(const buffer_info& b) {

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1049:84: error: expansion pattern ‘std::is_array<_Tp>’ contains no argument packs static bool compare(const buffer_info& b) {

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1049:106: error: expansion pattern ‘pybind11::detail::is_std_array’ contains no argument packs static bool compare(const buffer_info& b) {

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:6: error: expansion pattern ‘std::is_arithmetic<_Tp>’ contains no argument packs return npy_api::get().PyArrayEquivTypes(dtype::of().ptr(), dtype(b).ptr());

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:26: error: expansion pattern ‘pybind11::detail::is_complex’ contains no argument packs return npy_api::get().PyArrayEquivTypes(dtype::of().ptr(), dtype(b).ptr());

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:48: error: expansion pattern ‘std::is_enum<_Tp>’ contains no argument packs return npy_api::get().PyArrayEquivTypes(dtype::of().ptr(), dtype(b).ptr());

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:51: error: template argument 1 is invalid return npy_api::get().PyArrayEquivTypes(dtype::of().ptr(), dtype(b).ptr());

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:51: error: template argument 2 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:51: error: template argument 3 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:51: error: template argument 4 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:51: error: template argument 5 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:51: error: template argument 6 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:53: error: template argument 1 is invalid return npy_api::get().PyArrayEquivTypes(dtype::of().ptr(), dtype(b).ptr());

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:62: error: expected parameter pack before ‘...’ return npy_api::get().PyArrayEquivTypes(dtype::of().ptr(), dtype(b).ptr());

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:71: error: template argument 1 is invalid return npy_api::get().PyArrayEquivTypes(dtype::of().ptr(), dtype(b).ptr());

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:71: error: template argument 2 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:71: error: template argument 3 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1050:123: error: expansion pattern ‘std::is_standard_layout<_Tp>::value’ contains no argument packs return npy_api::get().PyArrayEquivTypes(dtype::of().ptr(), dtype(b).ptr());

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1051:38: error: expansion pattern ‘std::is_trivially_copyable<_Tp>::value’ contains no argument packs }

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1051:83: error: expansion pattern ‘std::is_reference<_Tp>’ contains no argument packs }

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1051:106: error: expansion pattern ‘std::is_array<_Tp>’ contains no argument packs }

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:0: error: expansion pattern ‘pybind11::detail::is_std_array’ contains no argument packs }; ~~ /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:28: error: expansion pattern ‘std::is_arithmetic<_Tp>’ contains no argument packs };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:48: error: expansion pattern ‘pybind11::detail::is_complex’ contains no argument packs };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:70: error: expansion pattern ‘std::is_enum<_Tp>’ contains no argument packs };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:73: error: template argument 1 is invalid };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:73: error: template argument 2 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:73: error: template argument 3 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:73: error: template argument 4 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:73: error: template argument 5 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:73: error: template argument 6 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:75: error: template argument 1 is invalid };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:84: error: expected parameter pack before ‘...’ };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:87: error: template argument 2 is invalid };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:87: error: template argument 3 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:87: error: template argument 4 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:89: error: template argument 1 is invalid };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:89: error: template argument 2 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:104: error: template argument 1 is invalid };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1052:106: error: template argument 2 is invalid };

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1085:100: error: expansion pattern ‘pybind11::detail::negation<std::is_arithmetic<_Tp> >’ contains no argument packs struct npy_format_descriptor<T, enable_if_t<satisfies_any_of<T, std::is_arithmetic, is_complex>::value>>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1085:132: error: expansion pattern ‘pybind11::detail::negation<pybind11::detail::is_complex >’ contains no argument packs struct npy_format_descriptor<T, enable_if_t<satisfies_any_of<T, std::is_arithmetic, is_complex>::value>>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1085:135: error: template argument 1 is invalid struct npy_format_descriptor<T, enable_if_t<satisfies_any_of<T, std::is_arithmetic, is_complex>::value>>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1085:135: error: template argument 2 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1085:137: error: template argument 1 is invalid struct npy_format_descriptor<T, enable_if_t<satisfies_any_of<T, std::is_arithmetic, is_complex>::value>>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1085:152: error: template argument 1 is invalid struct npy_format_descriptor<T, enable_if_t<satisfies_any_of<T, std::is_arithmetic, is_complex>::value>>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1085:154: error: template argument 2 is invalid struct npy_format_descriptor<T, enable_if_t<satisfies_any_of<T, std::is_arithmetic, is_complex>::value>>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1721:132: error: expansion pattern ‘std::is_function<typename std::remove_reference<_From>::type>’ contains no argument packs template <typename Func, detail::enable_if_t<detail::is_lambda::value, int> = 0>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1721:190: error: expansion pattern ‘std::is_pointer<typename std::remove_reference< >::type>’ contains no argument packs template <typename Func, detail::enable_if_t<detail::is_lambda::value, int> = 0>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1721:255: error: expansion pattern ‘std::is_member_pointer<typename std::remove_reference< >::type>’ contains no argument packs template <typename Func, detail::enable_if_t<detail::is_lambda::value, int> = 0>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1721:258: error: template argument 1 is invalid template <typename Func, detail::enable_if_t<detail::is_lambda::value, int> = 0>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1721:258: error: template argument 2 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1721:258: error: template argument 3 is invalid /home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1721:260: error: template argument 1 is invalid template <typename Func, detail::enable_if_t<detail::is_lambda::value, int> = 0>

/home/kwu/miniconda3/envs/test2/include/pybind11/numpy.h:1721:274: error: template argument 1 is invalid template <typename Func, detail::enable_if_t<detail::is_lambda::value, int> = 0>

/home/kwu/graphvite/include/instance/graph.cuh:179: confused by earlier errors, bailing out src/CMakeFiles/graphvite.dir/build.make:75: recipe for target 'src/CMakeFiles/graphvite.dir/graphvite.cu.o' failed make[2]: [src/CMakeFiles/graphvite.dir/graphvite.cu.o] Error 1 CMakeFiles/Makefile2:97: recipe for target 'src/CMakeFiles/graphvite.dir/all' failed make[1]: [src/CMakeFiles/graphvite.dir/all] Error 2 Makefile:90: recipe for target 'all' failed make: *** [all] Error 2`

It seems related to pybind. But I am not sure. Can anyone help? Thanks!