caishanli/pyncnn

how to make on windows10

Opened this issue · 1 comments

wwdok commented

i followed the steps to build pyncnn, but until the make step, it reportd error:
image

If i try nmake, there is still errors:

**********************************************************************
** Visual Studio 2019 Developer Command Prompt v16.7.5
** Copyright (c) 2020 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community>cd C:\MachineLearning\CV\ncnn\pyncnn\build

C:\MachineLearning\CV\ncnn\pyncnn\build>cmake -G"NMake Makefiles" -DCMAKE_PREFIX_PATH=../build/install/lib/cmake/ncnn/ ..
-- The C compiler identification is MSVC 19.27.29112.0
-- The CXX compiler identification is MSVC 19.27.29112.0
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.27.29110/bin/Hostx64/x64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.27.29110/bin/Hostx64/x64/cl.exe - 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: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.27.29110/bin/Hostx64/x64/cl.exe
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.27.29110/bin/Hostx64/x64/cl.exe - works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found OpenMP_C: -openmp (found version "2.0")
-- Found OpenMP_CXX: -openmp (found version "2.0")
-- Found OpenMP: TRUE (found version "2.0")
-- Found Vulkan: C:/VulkanSDK/1.2.148.1/Lib/vulkan-1.lib
-- Looking for pthread.h
-- Looking for pthread.h - not found
-- Found Threads: TRUE
-- Found PythonInterp: C:/ProgramData/Anaconda3/python.exe (found version "3.7.4")
-- Found PythonLibs: C:/ProgramData/Anaconda3/libs/python37.lib
-- Performing Test HAS_MSVC_GL_LTCG
-- Performing Test HAS_MSVC_GL_LTCG - Success
-- Found pybind11: C:/ProgramData/Anaconda3/Lib/site-packages/pybind11/include (found version "2.6.1" )
-- Configuring done
-- Generating done
-- Build files have been written to: C:/MachineLearning/CV/ncnn/pyncnn/build

C:\MachineLearning\CV\ncnn\pyncnn\build>nmake

Microsoft (R) 程序维护实用工具 14.27.29112.0 版
版权所有 (C) Microsoft Corporation。  保留所有权利。

Scanning dependencies of target pyncnn
[ 50%] Building CXX object CMakeFiles/pyncnn.dir/src/main.cpp.obj
main.cpp
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(1835): warning C4267: “return”: 从“size_t”转换到“int”,可能丢失数据
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(2233): warning C4267: “return”: 从“size_t”转换到“int”,可能丢失数据
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(334): warning C4477: “sprintf”: 格式字符串“%ld”需要类型“long”的参数,但可变参数 5 拥有了类型“const size_t”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(334): note: 请考虑在格式字符串中使用“%zd”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(334): warning C4477: “sprintf”: 格式字符串“%ld”需要类型“long”的参数,但可变参数 6 拥有了类型“const size_t”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(334): note: 请考虑在格式字符串中使用“%zd”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(433): error C2440: “类型强制转换”: 无法从“overloaded-function”转换为“void (__cdecl ncnn::VkMat::* )(int,size_t,ncnn::VkAllocator *,ncnn::VkAllocator *)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(433): note: 在匹配目标类型的范围内没有具有该名称的函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(437): error C2440: “类型强制转换”: 无法从“overloaded-function”转换为“void (__cdecl ncnn::VkMat::* )(int,int,size_t,ncnn::VkAllocator *,ncnn::VkAllocator *)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(437): note: 在匹配目标类型的范围内没有具有该名称的函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(441): error C2440: “类型强制转换”: 无法从“overloaded-function”转换为“void (__cdecl ncnn::VkMat::* )(int,int,int,size_t,ncnn::VkAllocator *,ncnn::VkAllocator *)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(441): note: 在匹配目标类型的范围内没有具有该名称的函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(446): error C2440: “类型强制转换”: 无法从“overloaded-function”转换为“void (__cdecl ncnn::VkMat::* )(int,size_t,int,ncnn::VkAllocator *,ncnn::VkAllocator *)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(446): note: 在匹配目标类型的范围内没有具有该名称的函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(450): error C2440: “类型强制转换”: 无法从“overloaded-function”转换为“void (__cdecl ncnn::VkMat::* )(int,int,size_t,int,ncnn::VkAllocator *,ncnn::VkAllocator *)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(450): note: 在匹配目标类型的范围内没有具有该名称的函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(454): error C2440: “类型强制转换”: 无法从“overloaded-function”转换为“void (__cdecl ncnn::VkMat::* )(int,int,int,size_t,int,ncnn::VkAllocator *,ncnn::VkAllocator *)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(454): note: 在匹配目标类型的范围内没有具有该名称的函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(459): error C2440: “类型强制转换”: 无法从“overloaded-function”转换为“void (__cdecl ncnn::VkMat::* )(const ncnn::Mat &,ncnn::VkAllocator *,ncnn::VkAllocator *)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(459): note: 在匹配目标类型的范围内没有具有该名称的函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(459): error C2672: “pybind11::class_<ncnn::VkMat>::def”: 未找到匹配的重载函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2784: “pybind11::class_<ncnn::VkMat> &pybind11::class_<ncnn::VkMat>::def(pybind11::detail::initimpl::pickle_factory<Args...> &&,const Extra &...)”: 未能从“const char [12]”为“pybind11::detail::initimpl::pickle_factory<Args...> &&”推导 模板 参数
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1313): note: 参见“pybind11::class_<ncnn::VkMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2784: “pybind11::class_<ncnn::VkMat> &pybind11::class_<ncnn::VkMat>::def(pybind11::detail::initimpl::factory<Args...> &&,const Extra &...)”: 未能从“const char [12]”为“pybind11::detail::initimpl::factory<Args...> &&”推导 模板 参数
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1307): note: 参见“pybind11::class_<ncnn::VkMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2784: “pybind11::class_<ncnn::VkMat> &pybind11::class_<ncnn::VkMat>::def(const pybind11::detail::initimpl::alias_constructor<Args...> &,const Extra &...)”: 未能从“const char [12]”为“const pybind11::detail::initimpl::alias_constructor<Args...> &”推导 模板 参数
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1301): note: 参见“pybind11::class_<ncnn::VkMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2784: “pybind11::class_<ncnn::VkMat> &pybind11::class_<ncnn::VkMat>::def(const pybind11::detail::initimpl::constructor<Args...> &,const Extra &...)”: 未能从“const char [12]”为“const pybind11::detail::initimpl::constructor<Args...> &”推导 模板 参数
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1295): note: 参见“pybind11::class_<ncnn::VkMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2784: “pybind11::class_<ncnn::VkMat> &pybind11::class_<ncnn::VkMat>::def(const pybind11::detail::op_<id,ot,L,R> &,const Extra &...)”: 未能从“const char [12]”为“const pybind11::detail::op_<id,ot,L,R> &”推导 模板 参数
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1283): note: 参见“pybind11::class_<ncnn::VkMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2780: “pybind11::class_<ncnn::VkMat> &pybind11::class_<ncnn::VkMat>::def(const char *,Func &&,const Extra &...)”: 应输入 3 个参数,却提供了 1 个
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1265): note: 参见“pybind11::class_<ncnn::VkMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(460): error C2440: “类型强制转换”: 无法从“overloaded-function”转换为“void (__cdecl ncnn::VkMat::* )(const ncnn::VkMat &,ncnn::VkAllocator *,ncnn::VkAllocator *)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(460): note: 在匹配目标类型的范围内没有具有该名称的函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(461): error C2039: "prepare_staging_buffer": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “prepare_staging_buffer”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(462): error C2039: "discard_staging_buffer": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “discard_staging_buffer”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(463): error C2039: "upload": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “upload”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(464): error C2039: "download": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “download”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(471): error C2039: "channel": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “channel”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(472): error C2039: "channel": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(473): error C2039: "channel_range": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “channel_range”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(474): error C2039: "channel_range": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(475): error C2039: "row_range": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “row_range”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(476): error C2039: "row_range": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(477): error C2039: "range": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “range”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(478): error C2039: "range": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(482): error C2039: "staging_buffer_offset": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “staging_buffer_offset”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(484): error C2039: "offset": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “offset”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(485): error C2039: "staging_data": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “staging_data”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(487): error C2039: "staging_refcount": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “staging_refcount”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(491): error C2039: "staging_allocator": 不是 "ncnn::VkMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(292): note: 参见“ncnn::VkMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(377): error C2065: “staging_allocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(500): error C2065: “VkImageAllocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(498): error C2059: 语法错误:“>”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(498): error C2144: 语法错误:“unknown-type”的前面应有“)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(500): error C2672: “pybind11::class_<ncnn::VkImageMat>::def”: 未找到匹配的重载函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(498): error C2780: “pybind11::class_<ncnn::VkImageMat> &pybind11::class_<ncnn::VkImageMat>::def(pybind11::detail::initimpl::pickle_factory<Args...> &&,const Extra &...)”: 应输入 2 个参数,却提供了 0 个
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1313): note: 参见“pybind11::class_<ncnn::VkImageMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(498): error C2780: “pybind11::class_<ncnn::VkImageMat> &pybind11::class_<ncnn::VkImageMat>::def(pybind11::detail::initimpl::factory<Args...> &&,const Extra &...)”: 应输入 2 个参数,却提供了 0 个
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1307): note: 参见“pybind11::class_<ncnn::VkImageMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(498): error C2780: “pybind11::class_<ncnn::VkImageMat> &pybind11::class_<ncnn::VkImageMat>::def(const pybind11::detail::initimpl::alias_constructor<Args...> &,const Extra &...)”: 应输入 2 个参数,却提供了 0 个
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1301): note: 参见“pybind11::class_<ncnn::VkImageMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(498): error C2780: “pybind11::class_<ncnn::VkImageMat> &pybind11::class_<ncnn::VkImageMat>::def(const pybind11::detail::initimpl::constructor<Args...> &,const Extra &...)”: 应输入 2 个参数,却提供了 0 个
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1295): note: 参见“pybind11::class_<ncnn::VkImageMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(498): error C2780: “pybind11::class_<ncnn::VkImageMat> &pybind11::class_<ncnn::VkImageMat>::def(const pybind11::detail::op_<id,ot,L,R> &,const Extra &...)”: 应输入 2 个参数,却提供了 0 个
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1283): note: 参见“pybind11::class_<ncnn::VkImageMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(498): error C2780: “pybind11::class_<ncnn::VkImageMat> &pybind11::class_<ncnn::VkImageMat>::def(const char *,Func &&,const Extra &...)”: 应 输入 3 个参数,却提供了 0 个
C:\ProgramData\Anaconda3\Lib\site-packages\pybind11\include\pybind11/pybind11.h(1265): note: 参见“pybind11::class_<ncnn::VkImageMat>::def”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(498): error C2144: 语法错误:“unknown-type”的前面应有“;”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(498): error C2059: 语法错误:“)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(502): error C2065: “VkImageAllocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(513): error C2039: "width": 不是 "ncnn::VkImageMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(402): note: 参见“ncnn::VkImageMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(514): error C2039: "height": 不是 "ncnn::VkImageMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(402): note: 参见“ncnn::VkImageMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(515): error C2039: "format": 不是 "ncnn::VkImageMat" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\mat.h(402): note: 参见“ncnn::VkImageMat”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(531): error C2440: “类型强制转换”: 无法从“overloaded-function”转换为“int (__cdecl ncnn::Extractor::* )(const char *,ncnn::Mat &,int)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(531): note: 在匹配目标类型的范围内没有具有该名称的函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(535): error C2440: “类型强制转换”: 无法从“overloaded-function”转换为“int (__cdecl ncnn::Extractor::* )(int,ncnn::Mat &,int)”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(535): note: 在匹配目标类型的范围内没有具有该名称的函数
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(792): error C2039: "state": 不是 "ncnn::VkBufferMemory" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\allocator.h(207): note: 参见“ncnn::VkBufferMemory”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(785): error C2065: “state”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(797): error C2039: "memory_type_index": 不是 "ncnn::VkAllocator" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\gpu.h(171): note: 参见“ncnn::VkAllocator”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(795): error C2065: “memory_type_index”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(800): error C2065: “VkBlobBufferAllocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(800): error C2065: “VkBlobBufferAllocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(800): error C2923: “PyVkAllocatorOther”: 对于参数“Other”,“VkBlobBufferAllocator”不是有效的 模板 类型变量
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(800): error C2923: “pybind11::class_”: 对于参数“type_”,“VkBlobBufferAllocator”不是有效的 模板 类型变量
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(800): error C3203: “PyVkAllocatorOther”: 未专用化的 类 模板 不能用作 模板 变量,该变量属于 模板 参数“options”,应为 real 类型
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(800): error C2440: “<function-style-cast>”: 无法从“initializer list”转换为“pybind11::class_”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(800): note: 无构造函数可以接受源类型,或构造函数重载决策不明确
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(800): error C2653: “VkBlobBufferAllocator”: 不是类或命名空间名称
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(802): error C2065: “clear”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(805): error C2065: “VkWeightBufferAllocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(805): error C2065: “VkWeightBufferAllocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(805): error C2923: “PyVkAllocatorOther”: 对于参数“Other”,“VkWeightBufferAllocator”不是有效的 模板 类型变量
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(805): error C2923: “pybind11::class_”: 对于参数“type_”,“VkWeightBufferAllocator”不是有效的 模板 类型变量
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(805): error C3203: “PyVkAllocatorOther”: 未专用化的 类 模板 不能用作 模板 变量,该变量属于 模板 参数“options”,应为 real 类型
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(805): error C2440: “<function-style-cast>”: 无法从“initializer list”转换为“pybind11::class_”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(805): note: 无构造函数可以接受源类型,或构造函数重载决策不明确
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(805): error C2653: “VkWeightBufferAllocator”: 不是类或命名空间名称
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(807): error C2065: “clear”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(810): error C2065: “VkStagingBufferAllocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(810): error C2065: “VkStagingBufferAllocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(810): error C2923: “PyVkAllocatorOther”: 对于参数“Other”,“VkStagingBufferAllocator”不是有效的 模板 类型变量
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(810): error C2923: “pybind11::class_”: 对于参数“type_”,“VkStagingBufferAllocator”不是有效的 模板 类型变量
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(810): error C3203: “PyVkAllocatorOther”: 未专用化的 类 模板 不能用作 模板 变量,该变量属于 模板 参数“options”,应为 real 类型
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(810): error C2440: “<function-style-cast>”: 无法从“initializer list”转换为“pybind11::class_”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(810): note: 无构造函数可以接受源类型,或构造函数重载决策不明确
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(810): error C2653: “VkStagingBufferAllocator”: 不是类或命名空间名称
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(812): error C2065: “set_size_compare_ratio”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(813): error C2065: “clear”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(816): error C2065: “VkWeightStagingBufferAllocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(816): error C2065: “VkWeightStagingBufferAllocator”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(816): error C2923: “PyVkAllocatorOther”: 对于参数“Other”,“VkWeightStagingBufferAllocator”不是有效的 模板 类型变量
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(816): error C2923: “pybind11::class_”: 对于参数“type_”,“VkWeightStagingBufferAllocator”不是有效的 模板 类型变量
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(816): error C3203: “PyVkAllocatorOther”: 未专用化的 类 模板 不能用作 模板 变量,该变量属于 模板 参数“options”,应为 real 类型
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(816): error C2440: “<function-style-cast>”: 无法从“initializer list”转换为“pybind11::class_”
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(816): note: 无构造函数可以接受源类型,或构造函数重载决策不明确
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(816): error C2653: “VkWeightStagingBufferAllocator”: 不是类或命名空间名称
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(826): error C2039: "state": 不是 "ncnn::VkImageMemory" 的成员
C:\MachineLearning\CV\ncnn\build\install\include\ncnn\allocator.h(227): note: 参见“ncnn::VkImageMemory”的声明
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(821): error C2065: “state”: 未声明的标识符
C:\MachineLearning\CV\ncnn\pyncnn\src\main.cpp(821): fatal error C1003: 错误计数超过 100;正在停止编译
NMAKE : fatal error U1077: “C:\PROGRA~2\MICROS~3\2019\COMMUN~1\VC\Tools\MSVC\1427~1.291\bin\Hostx64\x64\cl.exe”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.27.29110\bin\HostX64\x64\nmake.exe"”: 返回代码“0x2”
Stop.
NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.27.29110\bin\HostX64\x64\nmake.exe"”: 返回代码“0x2”
Stop.

please use https://github.com/caishanli/ncnn, and pass -DNCNN_PYTHON=ON to cmake.
this code will merge to ncnn after next ncnn's release.