Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vulkan does not work on windows #1

Open
chemicstry opened this issue Oct 5, 2022 · 3 comments
Open

Vulkan does not work on windows #1

chemicstry opened this issue Oct 5, 2022 · 3 comments

Comments

@chemicstry
Copy link
Collaborator

Linking fails on windows:

$ cargo run --example benchmark --release --features ncnn-bind/vulkan
   Compiling ncnn-bind v0.1.1 (D:\Dev\rust-ncnn\ncnn-bind)
   Compiling ncnn-rs v0.1.1 (D:\Dev\rust-ncnn\ncnn-rs)
error: linking with `link.exe` failed: exit code: 1120
  |
  = note: "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Tools\\MSVC\\14.25.28610\\bin\\HostX64\\x64\\link.exe" "/NOLOGO" "C:\\Users\\User\\AppData\\Local\\Temp\\rustcUnL6DA\\symbols.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.0.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.1.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.10.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.11.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.12.rcgu.o" 
"D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.13.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.14.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.15.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.2.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.3.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.4.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.5.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.6.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.7.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.8.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.benchmark.dac570e1-cgu.9.rcgu.o" "D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.1xinaw9h0nl01xq1.rcgu.o" "/LIBPATH:D:\\Dev\\rust-ncnn\\target\\release\\deps" "/LIBPATH:D:\\Dev\\rust-ncnn\\target\\release\\build\\ncnn-bind-90dd69b393bc8391\\out" "/LIBPATH:D:\\Dev\\rust-ncnn\\target\\release\\build\\ncnn-bind-90dd69b393bc8391\\out\\lib" "/LIBPATH:C:\\Program Files\\VulkanSDK\\1.2.131.2/Lib" "/LIBPATH:C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "D:\\Dev\\rust-ncnn\\target\\release\\deps\\libncnn_rs-e8c73af622e9203d.rlib" "D:\\Dev\\rust-ncnn\\target\\release\\deps\\libanyhow-976e149dbb5e08fd.rlib" "D:\\Dev\\rust-ncnn\\target\\release\\deps\\liblibc-c6c5f38c304d847a.rlib" "D:\\Dev\\rust-ncnn\\target\\release\\deps\\libncnn_bind-de02af2c5c88bbc4.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libstd-4a00450d169b6eb7.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libpanic_unwind-aebdd47781a8ded3.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\librustc_demangle-75d00692298b803c.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libstd_detect-212d184ebbb3da0c.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libhashbrown-bb2ae27a3860a710.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libminiz_oxide-aebeb1235b6ade9b.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libadler-8d905bd195def6d5.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\librustc_std_workspace_alloc-cdd36af8506e2d87.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libunwind-57642f47c953f1ca.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcfg_if-ddc101acd19cf3dd.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\liblibc-304d7f6977c84a4b.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\liballoc-32d7ee0be9e46c85.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\librustc_std_workspace_core-015e9ae63a74e3a1.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcore-15d7d0533432428b.rlib" "C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib\\libcompiler_builtins-cfe8447efe28cb1e.rlib" "vulkan-1.lib" "glslang.lib" "SPIRV.lib" "OGLCompiler.lib" "OSDependent.lib" "advapi32.lib" "userenv.lib" "kernel32.lib" "ws2_32.lib" "bcrypt.lib" "msvcrt.lib" "/NXCOMPAT" "/LIBPATH:C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\x86_64-pc-windows-msvc\\lib" "/OUT:D:\\Dev\\rust-ncnn\\target\\release\\examples\\benchmark.exe" "/OPT:REF,ICF" "/DEBUG" "/NATVIS:C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\intrinsic.natvis" "/NATVIS:C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\liballoc.natvis" "/NATVIS:C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libcore.natvis" "/NATVIS:C:\\Users\\User\\.rustup\\toolchains\\stable-x86_64-pc-windows-msvc\\lib\\rustlib\\etc\\libstd.natvis" "-fuse-ld=lld"
  = note: LINK : warning LNK4044: unrecognized option '/fuse-ld=lld'; ignored
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "bool __cdecl glslang::InitializeProcess(void)" (?InitializeProcess@glslang@@YA_NXZ) referenced in function "int __cdecl ncnn::create_gpu_instance(void)" (?create_gpu_instance@ncnn@@YAHXZ)
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "void __cdecl glslang::FinalizeProcess(void)" (?FinalizeProcess@glslang@@YAXXZ) referenced in function "void __cdecl ncnn::`dynamic atexit destructor for 'g_instance''(void)" (??__Fg_instance@ncnn@@YAXXZ)
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "public: __cdecl glslang::TShader::TShader(enum EShLanguage)" (??0TShader@glslang@@QEAA@W4EShLanguage@@@Z) referenced in function "int __cdecl ncnn::compile_spirv_module(char const *,int,class ncnn::Option const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &)" (?compile_spirv_module@ncnn@@YAHPEBDHAEBVOption@1@AEAV?$vector@IV?$allocator@I@std@@@std@@@Z)
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "public: virtual __cdecl glslang::TShader::~TShader(void)" (??1TShader@glslang@@UEAA@XZ) referenced in function "int __cdecl 
ncnn::compile_spirv_module(char const *,int,class ncnn::Option const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &)" (?compile_spirv_module@ncnn@@YAHPEBDHAEBVOption@1@AEAV?$vector@IV?$allocator@I@std@@@std@@@Z)
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "public: void __cdecl glslang::TShader::setStringsWithLengths(char const * const *,int const *,int)" (?setStringsWithLengths@TShader@glslang@@QEAAXPEBQEBDPEBHH@Z) referenced in function "int __cdecl ncnn::compile_spirv_module(char const *,int,class ncnn::Option const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &)" (?compile_spirv_module@ncnn@@YAHPEBDHAEBVOption@1@AEAV?$vector@IV?$allocator@I@std@@@std@@@Z)
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "public: void __cdecl glslang::TShader::setEntryPoint(char const *)" (?setEntryPoint@TShader@glslang@@QEAAXPEBD@Z) referenced in function "int __cdecl ncnn::compile_spirv_module(char const *,int,class ncnn::Option const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &)" (?compile_spirv_module@ncnn@@YAHPEBDHAEBVOption@1@AEAV?$vector@IV?$allocator@I@std@@@std@@@Z)
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "public: void __cdecl glslang::TShader::setSourceEntryPoint(char const *)" (?setSourceEntryPoint@TShader@glslang@@QEAAXPEBD@Z) referenced in function "int __cdecl ncnn::compile_spirv_module(char const *,int,class ncnn::Option const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &)" (?compile_spirv_module@ncnn@@YAHPEBDHAEBVOption@1@AEAV?$vector@IV?$allocator@I@std@@@std@@@Z)
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "public: void __cdecl glslang::TShader::addProcesses(class std::vector<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::allocator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > > const &)" (?addProcesses@TShader@glslang@@QEAAXAEBV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z) referenced in function "int __cdecl ncnn::compile_spirv_module(char const *,int,class ncnn::Option const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &)" (?compile_spirv_module@ncnn@@YAHPEBDHAEBVOption@1@AEAV?$vector@IV?$allocator@I@std@@@std@@@Z)
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "public: bool __cdecl glslang::TShader::parse(struct TBuiltInResource const *,int,enum EProfile,bool,bool,enum EShMessages,class glslang::TShader::Includer &)" (?parse@TShader@glslang@@QEAA_NPEBUTBuiltInResource@@HW4EProfile@@_N2W4EShMessages@@AEAVIncluder@12@@Z) referenced in function "int __cdecl ncnn::compile_spirv_module(char const *,int,class ncnn::Option const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &)" (?compile_spirv_module@ncnn@@YAHPEBDHAEBVOption@1@AEAV?$vector@IV?$allocator@I@std@@@std@@@Z)
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "public: char const * __cdecl glslang::TShader::getInfoLog(void)" (?getInfoLog@TShader@glslang@@QEAAPEBDXZ) referenced in function "int __cdecl ncnn::compile_spirv_module(char const *,int,class ncnn::Option const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &)" (?compile_spirv_module@ncnn@@YAHPEBDHAEBVOption@1@AEAV?$vector@IV?$allocator@I@std@@@std@@@Z)
          libncnn_bind-de02af2c5c88bbc4.rlib(gpu.obj) : error LNK2019: unresolved external symbol "public: char const * __cdecl glslang::TShader::getInfoDebugLog(void)" (?getInfoDebugLog@TShader@glslang@@QEAAPEBDXZ) referenced in function "int __cdecl ncnn::compile_spirv_module(char const *,int,class ncnn::Option const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &)" (?compile_spirv_module@ncnn@@YAHPEBDHAEBVOption@1@AEAV?$vector@IV?$allocator@I@std@@@std@@@Z)
          SPIRV.lib(GlslangToSpv.obj) : error LNK2019: unresolved external symbol "public: void __cdecl glslang::TPoolAllocator::push(void)" (?push@TPoolAllocator@glslang@@QEAAXXZ) referenced in function "void __cdecl glslang::GlslangToSpv(class glslang::TIntermediate const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &,struct glslang::SpvOptions *)" (?GlslangToSpv@glslang@@YAXAEBVTIntermediate@1@AEAV?$vector@IV?$allocator@I@std@@@std@@PEAUSpvOptions@1@@Z)
          SPIRV.lib(GlslangToSpv.obj) : error LNK2019: unresolved external symbol "public: void __cdecl glslang::TPoolAllocator::pop(void)" (?pop@TPoolAllocator@glslang@@QEAAXXZ) referenced in function "void __cdecl glslang::GlslangToSpv(class glslang::TIntermediate const &,class std::vector<unsigned int,class std::allocator<unsigned int> > &,struct glslang::SpvOptions *)" (?GlslangToSpv@glslang@@YAXAEBVTIntermediate@1@AEAV?$vector@IV?$allocator@I@std@@@std@@PEAUSpvOptions@1@@Z)
          SPIRV.lib(GlslangToSpv.obj) : error LNK2019: unresolved external symbol "public: void * __cdecl glslang::TPoolAllocator::allocate(unsigned __int64)" (?allocate@TPoolAllocator@glslang@@QEAAPEAX_K@Z) referenced in function "protected: struct std::_Tree_node<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> >,void *> * __cdecl std::_Tree<class std::_Tmap_traits<int,class glslang::TVector<class glslang::TIntermConstantUnion const *>,struct std::less<int>,class glslang::pool_allocator<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> > >,0> >::_Copy_nodes<struct std::_Tree<class std::_Tmap_traits<int,class glslang::TVector<class glslang::TIntermConstantUnion const *>,struct std::less<int>,class glslang::pool_allocator<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> > >,0> >::_Copy_tag>(struct std::_Tree_node<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> >,void *> *,struct std::_Tree_node<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> >,void *> *,struct std::_Tree<class std::_Tmap_traits<int,class glslang::TVector<class glslang::TIntermConstantUnion const *>,struct std::less<int>,class glslang::pool_allocator<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> > >,0> >::_Copy_tag)" (??$_Copy_nodes@U_Copy_tag@?$_Tree@V?$_Tmap_traits@HV?$TVector@PEBVTIntermConstantUnion@glslang@@@glslang@@U?$less@H@std@@V?$pool_allocator@U?$pair@$$CBHV?$TVector@PEBVTIntermConstantUnion@glslang@@@glslang@@@std@@@2@$0A@@std@@@std@@@?$_Tree@V?$_Tmap_traits@HV?$TVector@PEBVTIntermConstantUnion@glslang@@@glslang@@U?$less@H@std@@V?$pool_allocator@U?$pair@$$CBHV?$TVector@PEBVTIntermConstantUnion@glslang@@@glslang@@@std@@@2@$0A@@std@@@std@@IEAAPEAU?$_Tree_node@U?$pair@$$CBHV?$TVector@PEBVTIntermConstantUnion@glslang@@@glslang@@@std@@PEAX@1@PEAU21@0U_Copy_tag@01@@Z)
          SPIRV.lib(GlslangToSpv.obj) : error LNK2019: unresolved external symbol "class glslang::TPoolAllocator & __cdecl glslang::GetThreadPoolAllocator(void)" (?GetThreadPoolAllocator@glslang@@YAAEAVTPoolAllocator@1@XZ) 
referenced in function "protected: struct std::_Tree_node<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> >,void *> * __cdecl std::_Tree<class std::_Tmap_traits<int,class glslang::TVector<class glslang::TIntermConstantUnion const *>,struct std::less<int>,class glslang::pool_allocator<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> > >,0> >::_Copy_nodes<struct std::_Tree<class std::_Tmap_traits<int,class glslang::TVector<class glslang::TIntermConstantUnion const *>,struct std::less<int>,class glslang::pool_allocator<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> > >,0> >::_Copy_tag>(struct std::_Tree_node<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> >,void *> *,struct std::_Tree_node<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> >,void *> *,struct std::_Tree<class std::_Tmap_traits<int,class glslang::TVector<class glslang::TIntermConstantUnion const *>,struct std::less<int>,class glslang::pool_allocator<struct std::pair<int const ,class glslang::TVector<class glslang::TIntermConstantUnion const *> > >,0> >::_Copy_tag)" (??$_Copy_nodes@U_Copy_tag@?$_Tree@V?$_Tmap_traits@HV?$TVector@PEBVTIntermConstantUnion@glslang@@@glslang@@U?$less@H@std@@V?$pool_allocator@U?$pair@$$CBHV?$TVector@PEBVTIntermConstantUnion@glslang@@@glslang@@@std@@@2@$0A@@std@@@std@@@?$_Tree@V?$_Tmap_traits@HV?$TVector@PEBVTIntermConstantUnion@glslang@@@glslang@@U?$less@H@std@@V?$pool_allocator@U?$pair@$$CBHV?$TVector@PEBVTIntermConstantUnion@glslang@@@glslang@@@std@@@2@$0A@@std@@@std@@IEAAPEAU?$_Tree_node@U?$pair@$$CBHV?$TVector@PEBVTIntermConstantUnion@glslang@@@glslang@@@std@@PEAX@1@PEAU21@0U_Copy_tag@01@@Z)
          SPIRV.lib(GlslangToSpv.obj) : error LNK2019: unresolved external symbol "int __cdecl glslang::GetKhronosToolId(void)" (?GetKhronosToolId@glslang@@YAHXZ) referenced in function "public: __cdecl `anonymous namespace'::TGlslangToSpvTraverser::TGlslangToSpvTraverser(unsigned int,class glslang::TIntermediate const *,class spv::SpvBuildLogger *,struct glslang::SpvOptions &)" (??0TGlslangToSpvTraverser@?A0x7e21dd2a@@QEAA@IPEBVTIntermediate@glslang@@PEAVSpvBuildLogger@spv@@AEAUSpvOptions@3@@Z)
          SPIRV.lib(GlslangToSpv.obj) : error LNK2019: unresolved external symbol "public: class glslang::TIntermAggregate * __cdecl glslang::TIntermediate::findLinkerObjects(void)const " (?findLinkerObjects@TIntermediate@glslang@@QEBAPEAVTIntermAggregate@2@XZ) referenced in function "public: virtual bool __cdecl `anonymous namespace'::TGlslangToSpvTraverser::visitAggregate(enum glslang::TVisit,class glslang::TIntermAggregate *)" (?visitAggregate@TGlslangToSpvTraverser@?A0x7e21dd2a@@UEAA_NW4TVisit@glslang@@PEAVTIntermAggregate@4@@Z)
          SPIRV.lib(GlslangToSpv.obj) : error LNK2019: unresolved external symbol "public: static int __cdecl glslang::TIntermediate::getBaseAlignmentScalar(class glslang::TType const &,int &)" (?getBaseAlignmentScalar@TIntermediate@glslang@@SAHAEBVTType@2@AEAH@Z) referenced in function "public: virtual bool __cdecl `anonymous namespace'::TGlslangToSpvTraverser::visitBinary(enum glslang::TVisit,class glslang::TIntermBinary *)" (?visitBinary@TGlslangToSpvTraverser@?A0x7e21dd2a@@UEAA_NW4TVisit@glslang@@PEAVTIntermBinary@4@@Z)
          SPIRV.lib(GlslangToSpv.obj) : error LNK2019: unresolved external symbol "public: static int __cdecl glslang::TIntermediate::getMemberAlignment(class glslang::TType const &,int &,int &,enum glslang::TLayoutPacking,bool)" (?getMemberAlignment@TIntermediate@glslang@@SAHAEBVTType@2@AEAH1W4TLayoutPacking@2@_N@Z) referenced in function "protected: unsigned int __cdecl `anonymous namespace'::TGlslangToSpvTraverser::convertGlslangToSpvType(class glslang::TType const &,enum glslang::TLayoutPacking,class glslang::TQualifier const &,bool,bool)" (?convertGlslangToSpvType@TGlslangToSpvTraverser@?A0x7e21dd2a@@IEAAIAEBVTType@glslang@@W4TLayoutPacking@4@AEBVTQualifier@4@_N3@Z)
          SPIRV.lib(GlslangToSpv.obj) : error LNK2019: unresolved external symbol "public: static bool __cdecl glslang::TIntermediate::improperStraddle(class glslang::TType const &,int,int)" (?improperStraddle@TIntermediate@glslang@@SA_NAEBVTType@2@HH@Z) referenced in function "protected: void __cdecl `anonymous namespace'::TGlslangToSpvTraverser::decorateStructType(class glslang::TType const &,class glslang::TVector<struct glslang::TTypeLoc> const *,enum glslang::TLayoutPacking,class glslang::TQualifier const &,unsigned int)" (?decorateStructType@TGlslangToSpvTraverser@?A0x7e21dd2a@@IEAAXAEBVTType@glslang@@PEBV?$TVector@UTTypeLoc@glslang@@@4@W4TLayoutPacking@4@AEBVTQualifier@4@I@Z)
          D:\Dev\rust-ncnn\target\release\examples\benchmark.exe : fatal error LNK1120: 20 unresolved externals        

This error appears even when adding proper links in build.rs:

    println!("cargo:rustc-link-lib=glslang");
    println!("cargo:rustc-link-lib=SPIRV");
    println!("cargo:rustc-link-lib=OGLCompiler");
    println!("cargo:rustc-link-lib=OSDependent");
@tpoisonooo
Copy link

Get it, let me try to fix it.

@tpoisonooo
Copy link

And merge this repo. Sorry for missing all github notifications on Sep 30

@tpoisonooo
Copy link

And merge this repo. Sorry for missing all github notifications on Sep 30

merged.

chemicstry pushed a commit that referenced this issue Nov 24, 2022
Fix build on windows and detect env changes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants