shacklettbp / bps3D

MIT License
17 stars 1 forks source link

Error while building: cannot convert ‘std::nullptr_t’ to ‘uint32_t’ #1

Closed alstar8 closed 3 years ago

alstar8 commented 3 years ago

Hi! Every time I've tried to build bps3D I've had this issue. Checked requirements many times and have no idea what could possibly be missing. I have ubuntu 18, NVIDIA_DRIVER_VERSION='460.73.01', CUDA 11.1, Vulkan 1.2.176, GNU 10.3.0, PyTorch 1.8. Vulkan was built as it was recommended at the official Vulkan SDK website. Tried to build it at the system or in docker, same issue. Could someone please tell me what could help me or if there's dockerfile ready for this simulator it would be perfect. If any additional information needed, could provide it

git clone --recursive https://github.com/shacklettbp/bps3D; \

cd bps3D; \ mkdir build; \ cd build; \ cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ..; \ make Cloning into 'bps3D'... remote: Enumerating objects: 93, done. remote: Counting objects: 100% (93/93), done. remote: Compressing objects: 100% (85/85), done. remote: Total 93 (delta 4), reused 93 (delta 4), pack-reused 0 Unpacking objects: 100% (93/93), done. Submodule 'external/KTX-Software' (https://github.com/KhronosGroup/KTX-Software.git) registered for path 'external/KTX-Software' Submodule 'external/SPIRV-Reflect' (https://github.com/KhronosGroup/SPIRV-Reflect.git) registered for path 'external/SPIRV-Reflect' Submodule 'extra' (https://github.com/shacklettbp/external-extra-bps3D.git) registered for path 'external/extra' Submodule 'external/glm' (https://github.com/g-truc/glm.git) registered for path 'external/glm' Submodule 'external/glslang' (https://github.com/KhronosGroup/glslang.git) registered for path 'external/glslang' Submodule 'external/meshoptimizer' (https://github.com/zeux/meshoptimizer.git) registered for path 'external/meshoptimizer' Submodule 'external/simdjson' (https://github.com/simdjson/simdjson.git) registered for path 'external/simdjson' Submodule 'external/stb' (https://github.com/nothings/stb.git) registered for path 'external/stb' Cloning into '/bps3D/external/KTX-Software'... remote: Enumerating objects: 24345, done.
remote: Counting objects: 100% (1884/1884), done.
remote: Compressing objects: 100% (1106/1106), done.
remote: Total 24345 (delta 903), reused 1538 (delta 756), pack-reused 22461
Receiving objects: 100% (24345/24345), 180.16 MiB | 2.38 MiB/s, done. Resolving deltas: 100% (14384/14384), done. Cloning into '/bps3D/external/SPIRV-Reflect'... remote: Enumerating objects: 1532, done.
remote: Counting objects: 100% (55/55), done.
remote: Compressing objects: 100% (45/45), done.
remote: Total 1532 (delta 22), reused 35 (delta 10), pack-reused 1477
Receiving objects: 100% (1532/1532), 743.62 KiB | 1.89 MiB/s, done. Resolving deltas: 92% (849/920)
Resolving deltas: 100% (920/920), done. Cloning into '/bps3D/external/extra'... remote: Enumerating objects: 4, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 4 (delta 0), reused 4 (delta 0), pack-reused 0
Cloning into '/bps3D/external/glm'... remote: Enumerating objects: 56539, done.
remote: Counting objects: 100% (255/255), done.
remote: Compressing objects: 100% (145/145), done.
remote: Total 56539 (delta 151), reused 177 (delta 110), pack-reused 56284
Receiving objects: 100% (56539/56539), 69.12 MiB | 2.35 MiB/s, done. Resolving deltas: 100% (42663/42663), done. Cloning into '/bps3D/external/glslang'... remote: Enumerating objects: 49527, done.
remote: Counting objects: 100% (737/737), done.
remote: Compressing objects: 100% (344/344), done.
remote: Total 49527 (delta 460), reused 582 (delta 390), pack-reused 48790
Receiving objects: 100% (49527/49527), 63.48 MiB | 2.34 MiB/s, done. Resolving deltas: 100% (41689/41689), done. Cloning into '/bps3D/external/meshoptimizer'... remote: Enumerating objects: 8008, done.
remote: Counting objects: 100% (412/412), done.
remote: Compressing objects: 100% (159/159), done.
remote: Total 8008 (delta 272), reused 362 (delta 249), pack-reused 7596
Receiving objects: 100% (8008/8008), 2.97 MiB | 2.19 MiB/s, done. Resolving deltas: 100% (5724/5724), done. Cloning into '/bps3D/external/simdjson'... remote: Enumerating objects: 25475, done.
remote: Counting objects: 100% (1190/1190), done.
remote: Compressing objects: 100% (545/545), done.
remote: Total 25475 (delta 792), reused 955 (delta 640), pack-reused 24285
Receiving objects: 100% (25475/25475), 20.19 MiB | 4.02 MiB/s, done. Resolving deltas: 100% (18230/18230), done. Cloning into '/bps3D/external/stb'... remote: Enumerating objects: 7299, done.
remote: Counting objects: 100% (52/52), done.
remote: Compressing objects: 100% (32/32), done.
remote: Total 7299 (delta 24), reused 41 (delta 20), pack-reused 7247
Receiving objects: 100% (7299/7299), 4.94 MiB | 2.65 MiB/s, done. Resolving deltas: 100% (4857/4857), done. Submodule path 'external/KTX-Software': checked out 'c73701b99092b6f905b11f658566d5fa7fd96497' Submodule path 'external/SPIRV-Reflect': checked out 'c955ab3138b1d4a38956c61ea47e1d626392baf8' Submodule 'third_party/googletest' (https://github.com/google/googletest) registered for path 'external/SPIRV-Reflect/third_party/googletest' Cloning into '/bps3D/external/SPIRV-Reflect/third_party/googletest'... remote: Enumerating objects: 22808, done.
remote: Counting objects: 100% (466/466), done.
remote: Compressing objects: 100% (212/212), done.
remote: Total 22808 (delta 274), reused 331 (delta 220), pack-reused 22342
Receiving objects: 100% (22808/22808), 9.11 MiB | 1.83 MiB/s, done. Resolving deltas: 100% (16795/16795), done. Submodule path 'external/SPIRV-Reflect/third_party/googletest': checked out '3f0cf6b62ad1eb50d8736538363d3580dd640c3e' Submodule path 'external/extra': checked out '1976eaf1495f6e5c2c08ff7cc25008a5bb7d18f0' Submodule path 'external/glm': checked out 'bf71a834948186f4097caa076cd2663c69a10e1e' Submodule path 'external/glslang': checked out '51b86c1a2b77f612293abe0a86425e82353ac3c1' Submodule path 'external/meshoptimizer': checked out 'ccd6fe48fff113e298427610dcf9ddced76ea32e' Submodule path 'external/simdjson': checked out '17b03de3cd289937659c2dd4a9af0873c6fd483d' Submodule path 'external/stb': checked out 'b42009b3b9d4ca35bc703f5310eedc74f584be58' -- The C compiler identification is GNU 10.3.0 -- The CXX compiler identification is GNU 10.3.0 -- The CUDA compiler identification is NVIDIA 11.1.105 -- 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 -- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc -- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc -- works -- Detecting CUDA compiler ABI info -- Detecting CUDA compiler ABI info - done -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed -- Check if compiler accepts -pthread -- Check if compiler accepts -pthread - yes -- Found Threads: TRUE
-- Found CUDAToolkit: /usr/local/cuda/include (found version "11.1.105") -- Using bundled GLM -- The simdjson repository appears to be used as a subdirectory. -- By default, we just build the library. -- Building just the library, omitting all tests, tools and benchmarks. -- Building a static library. -- Library output directory: /bps3D/build/external/simdjson -- Found PythonInterp: /opt/conda/bin/python3 (found suitable version "3.8.5", minimum required is "3") -- Google Mock was not found - tests based on that will not build -- spirv-tools not linked - illegal SPIRV may be generated for HLSL -- Found Vulkan: /usr/lib/x86_64-linux-gnu/libvulkan.so
-- Configuring done -- Generating done -- Build files have been written to: /bps3D/build Scanning dependencies of target ktx [ 1%] Building CXX object external/CMakeFiles/ktx.dir/KTX-Software/lib/basis_transcode.cpp.o [ 2%] Building CXX object external/CMakeFiles/ktx.dir/KTX-Software/lib/basisu/transcoder/basisu_transcoder.cpp.o [ 3%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/checkheader.c.o [ 3%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/createdfd.c.o [ 4%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/colourspaces.c.o [ 5%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/interpretdfd.c.o [ 5%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/printdfd.c.o [ 6%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/queries.c.o [ 7%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/vk2dfd.c.o [ 8%] Building CXX object external/CMakeFiles/ktx.dir/KTX-Software/lib/etcdec.cxx.o [ 8%] Building CXX object external/CMakeFiles/ktx.dir/KTX-Software/lib/etcunpack.cxx.o [ 9%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/filestream.c.o [ 10%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/gl_funcs.c.o [ 10%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/glloader.c.o [ 11%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/hashlist.c.o [ 12%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/info.c.o [ 12%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/memstream.c.o [ 13%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/strings.c.o [ 14%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/swap.c.o [ 15%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/texture.c.o [ 15%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/texture2.c.o [ 16%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/vkformat_check.c.o [ 17%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/vkformat_str.c.o [ 17%] Building C object external/CMakeFiles/ktx.dir/KTX-shim/shim.c.o [ 18%] Linking CXX shared library libktx.so [ 18%] Built target ktx Scanning dependencies of target spirv_reflect [ 20%] Building C object external/CMakeFiles/spirv_reflect.dir/SPIRV-Reflect/spirv_reflect.c.o [ 21%] Linking C shared library libspirv_reflect.so [ 21%] Built target spirv_reflect Scanning dependencies of target generate_vk_dispatch [ 22%] Generating dispatch/dispatch.template [ 23%] Generating dispatch/dispatch_device_impl.hpp, dispatch/dispatch_device_impl.cpp, dispatch/dispatch_instance_impl.hpp, dispatch/dispatch_instance_impl.cpp [ 23%] Built target generate_vk_dispatch Scanning dependencies of target OGLCompiler [ 24%] Building CXX object external/glslang/OGLCompilersDLL/CMakeFiles/OGLCompiler.dir/InitializeDll.cpp.o [ 25%] Linking CXX static library libOGLCompiler.a [ 25%] Built target OGLCompiler Scanning dependencies of target GenericCodeGen [ 25%] Building CXX object external/glslang/glslang/CMakeFiles/GenericCodeGen.dir/GenericCodeGen/CodeGen.cpp.o [ 26%] Building CXX object external/glslang/glslang/CMakeFiles/GenericCodeGen.dir/GenericCodeGen/Link.cpp.o [ 27%] Linking CXX static library libGenericCodeGen.a [ 27%] Built target GenericCodeGen Scanning dependencies of target OSDependent [ 27%] Building CXX object external/glslang/glslang/OSDependent/Unix/CMakeFiles/OSDependent.dir/ossource.cpp.o [ 28%] Linking CXX static library libOSDependent.a [ 28%] Built target OSDependent Scanning dependencies of target MachineIndependent [ 29%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/cmake_pch.hxx.gch [ 29%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/glslang_tab.cpp.o [ 30%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/attribute.cpp.o [ 31%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Constant.cpp.o [ 32%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/iomapper.cpp.o [ 32%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/InfoSink.cpp.o [ 33%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Initialize.cpp.o [ 34%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/IntermTraverse.cpp.o [ 34%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Intermediate.cpp.o [ 35%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/ParseContextBase.cpp.o [ 36%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/ParseHelper.cpp.o [ 36%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/PoolAlloc.cpp.o [ 37%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/RemoveTree.cpp.o [ 38%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Scan.cpp.o [ 40%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/ShaderLang.cpp.o [ 40%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/SymbolTable.cpp.o [ 41%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Versions.cpp.o [ 42%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/intermOut.cpp.o [ 42%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/limits.cpp.o [ 43%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/linkValidate.cpp.o [ 44%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/parseConst.cpp.o [ 45%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/reflection.cpp.o [ 45%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/preprocessor/Pp.cpp.o [ 46%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/preprocessor/PpAtom.cpp.o [ 47%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/preprocessor/PpContext.cpp.o [ 47%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/preprocessor/PpScanner.cpp.o [ 48%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/preprocessor/PpTokens.cpp.o [ 49%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/propagateNoContraction.cpp.o [ 49%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslAttributes.cpp.o [ 50%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslParseHelper.cpp.o [ 51%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslScanContext.cpp.o [ 52%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslOpMap.cpp.o [ 52%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslTokenStream.cpp.o [ 53%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslGrammar.cpp.o [ 54%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslParseables.cpp.o [ 54%] Linking CXX static library libMachineIndependent.a [ 54%] Built target MachineIndependent Scanning dependencies of target glslang [ 54%] Building CXX object external/glslang/glslang/CMakeFiles/glslang.dir/CInterface/glslang_c_interface.cpp.o [ 55%] Linking CXX static library libglslang.a [ 55%] Built target glslang Scanning dependencies of target glslang-default-resource-limits [ 56%] Building CXX object external/glslang/StandAlone/CMakeFiles/glslang-default-resource-limits.dir/ResourceLimits.cpp.o [ 56%] Building CXX object external/glslang/StandAlone/CMakeFiles/glslang-default-resource-limits.dir/resource_limits_c.cpp.o [ 57%] Linking CXX static library libglslang-default-resource-limits.a [ 57%] Built target glslang-default-resource-limits Scanning dependencies of target SPIRV [ 58%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/GlslangToSpv.cpp.o In file included from /bps3D/external/glslang/SPIRV/GlslangToSpv.cpp:57: /bps3D/external/glslang/SPIRV/../glslang/MachineIndependent/SymbolTable.h: In member function ‘void glslang::TSymbolTable::amendSymbolIdLevel(glslang::TSymbol&)’: /bps3D/external/glslang/SPIRV/../glslang/MachineIndependent/SymbolTable.h:701:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const uint32_t’ {aka ‘const unsigned int’} [-Wsign-compare] 701 | uint64_t level = currentLevel() > MaxLevelInUniqueID ? MaxLevelInUniqueID : currentLevel(); | ~~~^~~~~~~~ /bps3D/external/glslang/SPIRV/../glslang/MachineIndependent/SymbolTable.h: In member function ‘void glslang::TSymbolTable::updateUniqueIdLevelFlag()’: /bps3D/external/glslang/SPIRV/../glslang/MachineIndependent/SymbolTable.h:892:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const uint32_t’ {aka ‘const unsigned int’} [-Wsign-compare] 892 | uint64_t level = currentLevel() > MaxLevelInUniqueID ? MaxLevelInUniqueID : currentLevel(); | ~~~^~~~~~~~ [ 60%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/InReadableOrder.cpp.o [ 60%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/Logger.cpp.o [ 61%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/SpvBuilder.cpp.o [ 62%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/SpvPostProcess.cpp.o [ 62%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/doc.cpp.o [ 63%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/SpvTools.cpp.o [ 64%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/disassemble.cpp.o [ 65%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/CInterface/spirv_c_interface.cpp.o [ 65%] Linking CXX static library libSPIRV.a [ 65%] Built target SPIRV Scanning dependencies of target bps3D_core [ 65%] Building CXX object src/bps3D_core/CMakeFiles/bps3D_core.dir/scene.cpp.o [ 66%] Building CXX object src/bps3D_core/CMakeFiles/bps3D_core.dir/utils.cpp.o [ 67%] Linking CXX shared library libbps3D_core.so [ 67%] Built target bps3D_core Scanning dependencies of target bps3D_vulkan [ 68%] Building CXX object src/vulkan/CMakeFiles/bps3D_vulkan.dir/render.cpp.o In file included from /usr/include/vulkan/vulkan.h:11, from /bps3D/src/vulkan/dispatch.hpp:3, from /bps3D/src/vulkan/core.hpp:7, from /bps3D/src/vulkan/render.hpp:16, from /bps3D/src/vulkan/render.cpp:1: /bps3D/src/vulkan/render.cpp: In member function ‘uint32_t bps3D::vk::VulkanBackend::render(const bps3D::Environment*)’: /bps3D/src/vulkan/render.cpp:1070:40: error: cannot convert ‘std::nullptr_t’ to ‘uint32_t’ {aka ‘unsigned int’} in assignment 1070 | init_barrier.srcQueueFamilyIndex = VK_NULL_HANDLE; | ^~~~~~ /bps3D/src/vulkan/render.cpp:1071:40: error: cannot convert ‘std::nullptr_t’ to ‘uint32_t’ {aka ‘unsigned int’} in assignment 1071 | init_barrier.dstQueueFamilyIndex = VK_NULL_HANDLE; | ^~~~~~ /bps3D/src/vulkan/render.cpp:1199:46: error: cannot convert ‘std::nullptr_t’ to ‘uint32_t’ {aka ‘unsigned int’} in assignment 1199 | buffer_barrier.srcQueueFamilyIndex = VK_NULL_HANDLE; | ^~~~~~ /bps3D/src/vulkan/render.cpp:1200:46: error: cannot convert ‘std::nullptr_t’ to ‘uint32_t’ {aka ‘unsigned int’} in assignment 1200 | buffer_barrier.dstQueueFamilyIndex = VK_NULL_HANDLE; | ^~~~~~ src/vulkan/CMakeFiles/bps3D_vulkan.dir/build.make:62: recipe for target 'src/vulkan/CMakeFiles/bps3D_vulkan.dir/render.cpp.o' failed make[2]: [src/vulkan/CMakeFiles/bps3D_vulkan.dir/render.cpp.o] Error 1 CMakeFiles/Makefile2:1912: recipe for target 'src/vulkan/CMakeFiles/bps3D_vulkan.dir/all' failed make[1]: [src/vulkan/CMakeFiles/bps3D_vulkan.dir/all] Error 2 Makefile:151: recipe for target 'all' failed make: *** [all] Error 2

shacklettbp commented 3 years ago

Sorry about this! It looks like an issue with the vulkan 1.2 SDK. If you need a fix ASAP, downloading the last version of the vulkan 1.1 SDK should work, it's what bps3D was developed against.

I'll push an update tomorrow that allows building against the 1.2 SDK. Let me know if you run into any other problems building!

alstar8 commented 3 years ago

@shacklettbp Thank you for your response, with 1.1.130 (the latest 1.1 that I found) I've got this additional error

git clone --recursive https://github.com/shacklettbp/bps3D; \

cd bps3D; \ mkdir build; \ cd build; \ cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo ..; \ make Cloning into 'bps3D'... remote: Enumerating objects: 93, done. remote: Counting objects: 100% (93/93), done. remote: Compressing objects: 100% (85/85), done. remote: Total 93 (delta 4), reused 93 (delta 4), pack-reused 0 Unpacking objects: 100% (93/93), done. Submodule 'external/KTX-Software' (https://github.com/KhronosGroup/KTX-Software.git) registered for path 'external/KTX-Software' Submodule 'external/SPIRV-Reflect' (https://github.com/KhronosGroup/SPIRV-Reflect.git) registered for path 'external/SPIRV-Reflect' Submodule 'extra' (https://github.com/shacklettbp/external-extra-bps3D.git) registered for path 'external/extra' Submodule 'external/glm' (https://github.com/g-truc/glm.git) registered for path 'external/glm' Submodule 'external/glslang' (https://github.com/KhronosGroup/glslang.git) registered for path 'external/glslang' Submodule 'external/meshoptimizer' (https://github.com/zeux/meshoptimizer.git) registered for path 'external/meshoptimizer' Submodule 'external/simdjson' (https://github.com/simdjson/simdjson.git) registered for path 'external/simdjson' Submodule 'external/stb' (https://github.com/nothings/stb.git) registered for path 'external/stb' Cloning into '/bps3D/external/KTX-Software'... remote: Enumerating objects: 24345, done.
remote: Counting objects: 100% (1884/1884), done.
remote: Compressing objects: 100% (1106/1106), done.
remote: Total 24345 (delta 903), reused 1538 (delta 756), pack-reused 22461
Receiving objects: 100% (24345/24345), 180.16 MiB | 5.73 MiB/s, done. Resolving deltas: 100% (14384/14384), done. Cloning into '/bps3D/external/SPIRV-Reflect'... remote: Enumerating objects: 1532, done.
remote: Counting objects: 100% (55/55), done.
remote: Compressing objects: 100% (45/45), done.
remote: Total 1532 (delta 22), reused 35 (delta 10), pack-reused 1477
Receiving objects: 100% (1532/1532), 743.62 KiB | 1.87 MiB/s, done. Resolving deltas: 100% (920/920), done. Cloning into '/bps3D/external/extra'... remote: Enumerating objects: 4, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 4 (delta 0), reused 4 (delta 0), pack-reused 0
Cloning into '/bps3D/external/glm'... remote: Enumerating objects: 56539, done.
remote: Counting objects: 100% (255/255), done.
remote: Compressing objects: 100% (145/145), done.
remote: Total 56539 (delta 151), reused 177 (delta 110), pack-reused 56284
Receiving objects: 100% (56539/56539), 69.12 MiB | 2.59 MiB/s, done. Resolving deltas: 100% (42664/42664), done. Cloning into '/bps3D/external/glslang'... remote: Enumerating objects: 49527, done.
remote: Counting objects: 100% (655/655), done.
remote: Compressing objects: 100% (304/304), done.
remote: Total 49527 (delta 410), reused 520 (delta 349), pack-reused 48872
Receiving objects: 100% (49527/49527), 63.51 MiB | 3.02 MiB/s, done. Resolving deltas: 100% (41695/41695), done. Cloning into '/bps3D/external/meshoptimizer'... remote: Enumerating objects: 8008, done.
remote: Counting objects: 100% (412/412), done.
remote: Compressing objects: 100% (159/159), done.
remote: Total 8008 (delta 272), reused 362 (delta 249), pack-reused 7596
Receiving objects: 100% (8008/8008), 2.97 MiB | 1.67 MiB/s, done. Resolving deltas: 100% (5724/5724), done. Cloning into '/bps3D/external/simdjson'... remote: Enumerating objects: 25475, done.
remote: Counting objects: 100% (1190/1190), done.
remote: Compressing objects: 100% (540/540), done.
remote: Total 25475 (delta 799), reused 953 (delta 645), pack-reused 24285
Receiving objects: 100% (25475/25475), 20.19 MiB | 2.66 MiB/s, done. Resolving deltas: 100% (18237/18237), done. Cloning into '/bps3D/external/stb'... remote: Enumerating objects: 7299, done.
remote: Counting objects: 100% (52/52), done.
remote: Compressing objects: 100% (32/32), done.
remote: Total 7299 (delta 24), reused 41 (delta 20), pack-reused 7247
Receiving objects: 100% (7299/7299), 4.94 MiB | 1.43 MiB/s, done. Resolving deltas: 100% (4857/4857), done. Submodule path 'external/KTX-Software': checked out 'c73701b99092b6f905b11f658566d5fa7fd96497' Submodule path 'external/SPIRV-Reflect': checked out 'c955ab3138b1d4a38956c61ea47e1d626392baf8' Submodule 'third_party/googletest' (https://github.com/google/googletest) registered for path 'external/SPIRV-Reflect/third_party/googletest' Cloning into '/bps3D/external/SPIRV-Reflect/third_party/googletest'... remote: Enumerating objects: 22808, done.
remote: Counting objects: 100% (466/466), done.
remote: Compressing objects: 100% (212/212), done.
remote: Total 22808 (delta 274), reused 331 (delta 220), pack-reused 22342
Receiving objects: 100% (22808/22808), 9.11 MiB | 1.76 MiB/s, done. Resolving deltas: 100% (16795/16795), done. Submodule path 'external/SPIRV-Reflect/third_party/googletest': checked out '3f0cf6b62ad1eb50d8736538363d3580dd640c3e' Submodule path 'external/extra': checked out '1976eaf1495f6e5c2c08ff7cc25008a5bb7d18f0' Submodule path 'external/glm': checked out 'bf71a834948186f4097caa076cd2663c69a10e1e' Submodule path 'external/glslang': checked out '51b86c1a2b77f612293abe0a86425e82353ac3c1' Submodule path 'external/meshoptimizer': checked out 'ccd6fe48fff113e298427610dcf9ddced76ea32e' Submodule path 'external/simdjson': checked out '17b03de3cd289937659c2dd4a9af0873c6fd483d' Submodule path 'external/stb': checked out 'b42009b3b9d4ca35bc703f5310eedc74f584be58' -- The C compiler identification is GNU 10.3.0 -- The CXX compiler identification is GNU 10.3.0 -- The CUDA compiler identification is NVIDIA 11.1.105 -- 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 -- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc -- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc -- works -- Detecting CUDA compiler ABI info -- Detecting CUDA compiler ABI info - done -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed -- Check if compiler accepts -pthread -- Check if compiler accepts -pthread - yes -- Found Threads: TRUE
-- Found CUDAToolkit: /usr/local/cuda/include (found version "11.1.105") -- Using bundled GLM -- The simdjson repository appears to be used as a subdirectory. -- By default, we just build the library. -- Building just the library, omitting all tests, tools and benchmarks. -- Building a static library. -- Library output directory: /bps3D/build/external/simdjson -- Found PythonInterp: /opt/conda/bin/python3 (found suitable version "3.8.5", minimum required is "3") -- Google Mock was not found - tests based on that will not build -- spirv-tools not linked - illegal SPIRV may be generated for HLSL -- Found Vulkan: /usr/lib/x86_64-linux-gnu/libvulkan.so
-- Configuring done -- Generating done -- Build files have been written to: /bps3D/build Scanning dependencies of target ktx [ 1%] Building CXX object external/CMakeFiles/ktx.dir/KTX-Software/lib/basis_transcode.cpp.o [ 2%] Building CXX object external/CMakeFiles/ktx.dir/KTX-Software/lib/basisu/transcoder/basisu_transcoder.cpp.o [ 3%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/checkheader.c.o [ 3%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/createdfd.c.o [ 4%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/colourspaces.c.o [ 5%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/interpretdfd.c.o [ 5%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/printdfd.c.o [ 6%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/queries.c.o [ 7%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/dfdutils/vk2dfd.c.o [ 8%] Building CXX object external/CMakeFiles/ktx.dir/KTX-Software/lib/etcdec.cxx.o [ 8%] Building CXX object external/CMakeFiles/ktx.dir/KTX-Software/lib/etcunpack.cxx.o [ 9%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/filestream.c.o [ 10%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/gl_funcs.c.o [ 10%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/glloader.c.o [ 11%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/hashlist.c.o [ 12%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/info.c.o [ 12%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/memstream.c.o [ 13%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/strings.c.o [ 14%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/swap.c.o [ 15%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/texture.c.o [ 15%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/texture2.c.o [ 16%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/vkformat_check.c.o [ 17%] Building C object external/CMakeFiles/ktx.dir/KTX-Software/lib/vkformat_str.c.o [ 17%] Building C object external/CMakeFiles/ktx.dir/KTX-shim/shim.c.o [ 18%] Linking CXX shared library libktx.so [ 18%] Built target ktx Scanning dependencies of target spirv_reflect [ 20%] Building C object external/CMakeFiles/spirv_reflect.dir/SPIRV-Reflect/spirv_reflect.c.o [ 21%] Linking C shared library libspirv_reflect.so [ 21%] Built target spirv_reflect Scanning dependencies of target generate_vk_dispatch [ 22%] Generating dispatch/dispatch.template [ 23%] Generating dispatch/dispatch_device_impl.hpp, dispatch/dispatch_device_impl.cpp, dispatch/dispatch_instance_impl.hpp, dispatch/dispatch_instance_impl.cpp [ 23%] Built target generate_vk_dispatch Scanning dependencies of target OGLCompiler [ 24%] Building CXX object external/glslang/OGLCompilersDLL/CMakeFiles/OGLCompiler.dir/InitializeDll.cpp.o [ 25%] Linking CXX static library libOGLCompiler.a [ 25%] Built target OGLCompiler Scanning dependencies of target GenericCodeGen [ 25%] Building CXX object external/glslang/glslang/CMakeFiles/GenericCodeGen.dir/GenericCodeGen/CodeGen.cpp.o [ 26%] Building CXX object external/glslang/glslang/CMakeFiles/GenericCodeGen.dir/GenericCodeGen/Link.cpp.o [ 27%] Linking CXX static library libGenericCodeGen.a [ 27%] Built target GenericCodeGen Scanning dependencies of target OSDependent [ 27%] Building CXX object external/glslang/glslang/OSDependent/Unix/CMakeFiles/OSDependent.dir/ossource.cpp.o [ 28%] Linking CXX static library libOSDependent.a [ 28%] Built target OSDependent Scanning dependencies of target MachineIndependent [ 29%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/cmake_pch.hxx.gch [ 29%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/glslang_tab.cpp.o [ 30%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/attribute.cpp.o [ 31%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Constant.cpp.o [ 32%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/iomapper.cpp.o [ 32%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/InfoSink.cpp.o [ 33%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Initialize.cpp.o [ 34%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/IntermTraverse.cpp.o [ 34%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Intermediate.cpp.o [ 35%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/ParseContextBase.cpp.o [ 36%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/ParseHelper.cpp.o [ 36%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/PoolAlloc.cpp.o [ 37%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/RemoveTree.cpp.o [ 38%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Scan.cpp.o [ 40%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/ShaderLang.cpp.o [ 40%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/SymbolTable.cpp.o [ 41%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/Versions.cpp.o [ 42%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/intermOut.cpp.o [ 42%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/limits.cpp.o [ 43%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/linkValidate.cpp.o [ 44%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/parseConst.cpp.o [ 45%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/reflection.cpp.o [ 45%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/preprocessor/Pp.cpp.o [ 46%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/preprocessor/PpAtom.cpp.o [ 47%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/preprocessor/PpContext.cpp.o [ 47%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/preprocessor/PpScanner.cpp.o [ 48%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/preprocessor/PpTokens.cpp.o [ 49%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/MachineIndependent/propagateNoContraction.cpp.o [ 49%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslAttributes.cpp.o [ 50%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslParseHelper.cpp.o [ 51%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslScanContext.cpp.o [ 52%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslOpMap.cpp.o [ 52%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslTokenStream.cpp.o [ 53%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslGrammar.cpp.o [ 54%] Building CXX object external/glslang/glslang/CMakeFiles/MachineIndependent.dir/HLSL/hlslParseables.cpp.o [ 54%] Linking CXX static library libMachineIndependent.a [ 54%] Built target MachineIndependent Scanning dependencies of target glslang [ 54%] Building CXX object external/glslang/glslang/CMakeFiles/glslang.dir/CInterface/glslang_c_interface.cpp.o [ 55%] Linking CXX static library libglslang.a [ 55%] Built target glslang Scanning dependencies of target glslang-default-resource-limits [ 56%] Building CXX object external/glslang/StandAlone/CMakeFiles/glslang-default-resource-limits.dir/ResourceLimits.cpp.o [ 56%] Building CXX object external/glslang/StandAlone/CMakeFiles/glslang-default-resource-limits.dir/resource_limits_c.cpp.o [ 57%] Linking CXX static library libglslang-default-resource-limits.a [ 57%] Built target glslang-default-resource-limits Scanning dependencies of target SPIRV [ 58%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/GlslangToSpv.cpp.o In file included from /bps3D/external/glslang/SPIRV/GlslangToSpv.cpp:57: /bps3D/external/glslang/SPIRV/../glslang/MachineIndependent/SymbolTable.h: In member function ‘void glslang::TSymbolTable::amendSymbolIdLevel(glslang::TSymbol&)’: /bps3D/external/glslang/SPIRV/../glslang/MachineIndependent/SymbolTable.h:701:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const uint32_t’ {aka ‘const unsigned int’} [-Wsign-compare] 701 | uint64_t level = currentLevel() > MaxLevelInUniqueID ? MaxLevelInUniqueID : currentLevel(); | ~~~^~~~~~~~ /bps3D/external/glslang/SPIRV/../glslang/MachineIndependent/SymbolTable.h: In member function ‘void glslang::TSymbolTable::updateUniqueIdLevelFlag()’: /bps3D/external/glslang/SPIRV/../glslang/MachineIndependent/SymbolTable.h:892:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const uint32_t’ {aka ‘const unsigned int’} [-Wsign-compare] 892 | uint64_t level = currentLevel() > MaxLevelInUniqueID ? MaxLevelInUniqueID : currentLevel(); | ~~~^~~~~~~~ [ 60%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/InReadableOrder.cpp.o [ 60%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/Logger.cpp.o [ 61%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/SpvBuilder.cpp.o [ 62%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/SpvPostProcess.cpp.o [ 62%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/doc.cpp.o [ 63%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/SpvTools.cpp.o [ 64%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/disassemble.cpp.o [ 65%] Building CXX object external/glslang/SPIRV/CMakeFiles/SPIRV.dir/CInterface/spirv_c_interface.cpp.o [ 65%] Linking CXX static library libSPIRV.a [ 65%] Built target SPIRV Scanning dependencies of target bps3D_core [ 65%] Building CXX object src/bps3D_core/CMakeFiles/bps3D_core.dir/scene.cpp.o [ 66%] Building CXX object src/bps3D_core/CMakeFiles/bps3D_core.dir/utils.cpp.o [ 67%] Linking CXX shared library libbps3D_core.so [ 67%] Built target bps3D_core Scanning dependencies of target bps3D_vulkan [ 68%] Building CXX object src/vulkan/CMakeFiles/bps3D_vulkan.dir/render.cpp.o In file included from /bps3D/src/vulkan/dispatch.hpp:15, from /bps3D/src/vulkan/core.hpp:7, from /bps3D/src/vulkan/render.hpp:16, from /bps3D/src/vulkan/render.cpp:1: /bps3D/build/src/vulkan/dispatch/dispatch_device_impl.hpp:78:5: error: ‘PFN_vkCreateAccelerationStructureKHR’ does not name a type; did you mean ‘PFN_vkCreateAccelerationStructureNV’? 78 | PFN_vkCreateAccelerationStructureKHR createAccelerationStructureKHR; | ^~~~~~~~ | PFN_vkCreateAccelerationStructureNV /bps3D/build/src/vulkan/dispatch/dispatch_device_impl.hpp:79:5: error: ‘PFN_vkGetAccelerationStructureBuildSizesKHR’ does not name a type; did you mean ‘PFN_vkGetAccelerationStructureHandleNV’? 79 | PFN_vkGetAccelerationStructureBuildSizesKHR getAccelerationStructureBuildSizesKHR; | ^~~~~~~~~~~ | PFN_vkGetAccelerationStructureHandleNV /bps3D/build/src/vulkan/dispatch/dispatch_device_impl.hpp:80:5: error: ‘PFN_vkGetAccelerationStructureDeviceAddressKHR’ does not name a type; did you mean ‘PFN_vkGetAccelerationStructureHandleNV’? 80 | PFN_vkGetAccelerationStructureDeviceAddressKHR getAccelerationStructureDeviceAddressKHR; | ^~~~~~~~~~ | PFN_vkGetAccelerationStructureHandleNV /bps3D/build/src/vulkan/dispatch/dispatch_device_impl.hpp:82:5: error: ‘PFN_vkCmdBuildAccelerationStructuresKHR’ does not name a type; did you mean ‘PFN_vkCmdBuildAccelerationStructureNV’? 82 | PFN_vkCmdBuildAccelerationStructuresKHR cmdBuildAccelerationStructuresKHR; | ^~~~~~~~~~~ | PFN_vkCmdBuildAccelerationStructureNV /bps3D/build/src/vulkan/dispatch/dispatch_device_impl.hpp:83:5: error: ‘PFN_vkDestroyAccelerationStructureKHR’ does not name a type; did you mean ‘PFN_vkDestroyAccelerationStructureNV’? 83 | PFN_vkDestroyAccelerationStructureKHR destroyAccelerationStructureKHR; | ^~~~~~~~~ | PFN_vkDestroyAccelerationStructureNV /bps3D/build/src/vulkan/dispatch/dispatch_device_impl.hpp:84:5: error: ‘PFN_vkCreateRayTracingPipelinesKHR’ does not name a type; did you mean ‘PFN_vkCreateRayTracingPipelinesNV’? 84 | PFN_vkCreateRayTracingPipelinesKHR createRayTracingPipelinesKHR; | ^~~~~~~~~~ | PFN_vkCreateRayTracingPipelinesNV /bps3D/build/src/vulkan/dispatch/dispatch_device_impl.hpp:85:5: error: ‘PFN_vkGetRayTracingShaderGroupHandlesKHR’ does not name a type; did you mean ‘PFN_vkGetRayTracingShaderGroupHandlesNV’? 85 | PFN_vkGetRayTracingShaderGroupHandlesKHR getRayTracingShaderGroupHandlesKHR; | ^~~~~~~~~~~~ | PFN_vkGetRayTracingShaderGroupHandlesNV /bps3D/build/src/vulkan/dispatch/dispatch_device_impl.hpp:86:5: error: ‘PFN_vkCmdTraceRaysKHR’ does not name a type; did you mean ‘PFN_vkCmdTraceRaysNV’? 86 | PFN_vkCmdTraceRaysKHR cmdTraceRaysKHR; | ^~~~~ | PFN_vkCmdTraceRaysNV In file included from /bps3D/src/vulkan/utils.inl:3, from /bps3D/src/vulkan/utils.hpp:92, from /bps3D/src/vulkan/descriptors.hpp:8, from /bps3D/src/vulkan/render.hpp:18, from /bps3D/src/vulkan/render.cpp:1: /bps3D/src/vulkan/shader.hpp:44:5: error: ‘VkDescriptorBindingFlags’ does not name a type; did you mean ‘VkDescriptorBindingFlagsEXT’? 44 | VkDescriptorBindingFlags flags; | ^~~~~~~~ | VkDescriptorBindingFlagsEXT /bps3D/src/vulkan/render.cpp: In function ‘bps3D::vk::RenderState bps3D::vk::makeRenderState(const bps3D::vk::DeviceState&, const bps3D::vk::BackendConfig&, bps3D::vk::MemoryAllocator&)’: /bps3D/src/vulkan/render.cpp:315:14: error: ‘VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT’ was not declared in this scope; did you mean ‘VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT’? 315 | VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT}, | ^~~~~~~~~ | VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT /bps3D/src/vulkan/render.cpp:317:23: error: no matching function for call to ‘bps3D::vk::ShaderPipeline::ShaderPipeline(const bps3D::vk::DeviceState&, , , std::vector<std::cxx11::basic_string >&)’ 317 | shader_defines); | ^ In file included from /bps3D/src/vulkan/utils.inl:3, from /bps3D/src/vulkan/utils.hpp:92, from /bps3D/src/vulkan/descriptors.hpp:8, from /bps3D/src/vulkan/render.hpp:18, from /bps3D/src/vulkan/render.cpp:1: /bps3D/src/vulkan/shader.hpp:54:5: note: candidate: ‘bps3D::vk::ShaderPipeline::ShaderPipeline(bps3D::vk::ShaderPipeline&&)’ 54 | ShaderPipeline(ShaderPipeline &&) = default; | ^~~~~~ /bps3D/src/vulkan/shader.hpp:54:5: note: candidate expects 1 argument, 4 provided /bps3D/src/vulkan/shader.hpp:49:5: note: candidate: ‘bps3D::vk::ShaderPipeline::ShaderPipeline(const bps3D::vk::DeviceState&, const std::vector<std::cxx11::basic_string >&, const std::vector&, const std::vector<std::__cxx11::basic_string >&)’ 49 | ShaderPipeline(const DeviceState &dev, | ^~~~~~ /bps3D/src/vulkan/shader.hpp:51:56: note: no known conversion for argument 3 from ‘’ to ‘const std::vector&’ 51 | const std::vector &binding_overrides, | ~~~~~~~~^~~~~ src/vulkan/CMakeFiles/bps3D_vulkan.dir/build.make:62: recipe for target 'src/vulkan/CMakeFiles/bps3D_vulkan.dir/render.cpp.o' failed make[2]: [src/vulkan/CMakeFiles/bps3D_vulkan.dir/render.cpp.o] Error 1 CMakeFiles/Makefile2:1912: recipe for target 'src/vulkan/CMakeFiles/bps3D_vulkan.dir/all' failed make[1]: [src/vulkan/CMakeFiles/bps3D_vulkan.dir/all] Error 2 Makefile:151: recipe for target 'all' failed make: *** [all] Error 2

shacklettbp commented 3 years ago

Oops, looks like support got caught in a weird in between place as I tried some experimental features then. I pushed up aa7a2c4 that should allow everything to work with the vulkan 1.2 SDK now. Let me know if it works for you and I'll close this.

alstar8 commented 3 years ago

@shacklettbp Thank you very much, it worked! With the addition to the CMakeLists.txt add_definitions(-D GLM_ENABLE_EXPERIMENTAL) . Could you also update this in the bps-nav repository please, my final goal is to run those code:)

shacklettbp commented 3 years ago

Glad it works for you now. I pushed the fix to bps-nav's submodule as well.

I'm unable to reproduce the need for adding GLM_ENABLE_EXPERIMENTAL to my CMakeLists.txt actually. Could you send me the compilation log when you don't have that in your CMakeLists.txt? I'm curious where exactly the error is originating from.

alstar8 commented 3 years ago

@shacklettbp I've got this error without adding. Maybe it depends on some other packages versions


[ 94%] Building CXX object bin/CMakeFiles/save_frame.dir/save_frame.cpp.o
[ 95%] Linking CXX executable save_frame
[ 95%] Built target save_frame
Scanning dependencies of target preprocess
[ 96%] Building CXX object bin/CMakeFiles/preprocess.dir/preprocess.cpp.o
In file included from /usr/include/glm/gtx/string_cast.hpp:23,
                 from /bps3D/bin/preprocess.cpp:4:
/usr/include/glm/gtx/dual_quaternion.hpp:24:3: error: #error "GLM: GLM_GTX_dual_quaternion is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it."
   24 | # error "GLM: GLM_GTX_dual_quaternion is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it."
      |   ^~~~~
In file included from /bps3D/bin/preprocess.cpp:4:
/usr/include/glm/gtx/string_cast.hpp:28:3: error: #error "GLM: GLM_GTX_string_cast is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it."
   28 | # error "GLM: GLM_GTX_string_cast is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it."
      |   ^~~~~
bin/CMakeFiles/preprocess.dir/build.make:62: recipe for target 'bin/CMakeFiles/preprocess.dir/preprocess.cpp.o' failed
make[2]: *** [bin/CMakeFiles/preprocess.dir/preprocess.cpp.o] Error 1
CMakeFiles/Makefile2:1967: recipe for target 'bin/CMakeFiles/preprocess.dir/all' failed
make[1]: *** [bin/CMakeFiles/preprocess.dir/all] Error 2
Makefile:151: recipe for target 'all' failed
make: *** [all] Error 2```
shacklettbp commented 3 years ago

Thanks for the information! Should be fixed with 851ec10