gl_vk_chopper icon indicating copy to clipboard operation
gl_vk_chopper copied to clipboard

Ubuntu 24.04: undefined reference to (multiple)

Open faveoled opened this issue 1 year ago • 2 comments

(build log from the second compilation run. the first one failed with the same errors)

user@laptop:~/Downloads/gl_vk_chopper$ cmake .
-- -------------------------------
-- Processing Project gl_vk_chopper:
-- BASE_DIRECTORY = /home/user/Downloads/gl_vk_chopper/
-- CMAKE_CURRENT_SOURCE_DIR = /home/user/Downloads/gl_vk_chopper
-- --> using package OpenGL
-- --> using package VulkanSDK (linking with /usr/lib/x86_64-linux-gnu/libvulkan.so)
-- --> using Vulkan Headers from: /usr/include
-- --> using package VulkanSDK (linking with /usr/lib/x86_64-linux-gnu/libvulkan.so)
-- --> using Vulkan Headers from: /usr/include
-- --> using package ShaderC
-- -------------------------------
-- Processing nvpro_core files
-- Including X11 support
-- --> using package VulkanSDK (linking with /usr/lib/x86_64-linux-gnu/libvulkan.so)
-- --> using Vulkan Headers from: /usr/include
-- --> using package ShaderC
--  - Find dependencies for hdr_dome.comp.glsl
--  - Find dependencies for hdr_integrate_brdf.comp.glsl
--  - Find dependencies for hdr_prefilter_diffuse.comp.glsl
--  - Find dependencies for hdr_prefilter_glossy.comp.glsl
--  - Find dependencies for passthrough.vert.glsl
--  - Find dependencies for sky.comp.glsl
--  - Find dependencies for sky_physical.comp.glsl
--  - Find dependencies for tonemapper.comp.glsl
--  - Find dependencies for tonemapper.frag.glsl
-- nvpro_core library name: nvpro_core_gl_vk_shaderc
--  Packages needed for nvpro_core lib compat:
-- Configuring done (2.2s)
-- Generating done (0.0s)
-- Build files have been written to: /home/user/Downloads/gl_vk_chopper
user@laptop:~/Downloads/gl_vk_chopper$ make
[ 16%] Built target glfw
[ 20%] Built target imgui
[ 23%] Built target implot
[ 24%] Built target fmt
[ 77%] Built target nvpro_core
[ 78%] Linking CXX executable bin_x64/Release/gl_vk_chopper_app
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(shaderc.cc.o): in function `shaderc_compilation_result_spv_binary::~shaderc_compilation_result_spv_binary()':
(.text._ZN37shaderc_compilation_result_spv_binaryD2Ev[_ZN37shaderc_compilation_result_spv_binaryD5Ev]+0x1f): undefined reference to `spvBinaryDestroy'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(shaderc.cc.o): in function `shaderc_compilation_result_spv_binary::~shaderc_compilation_result_spv_binary()':
(.text._ZN37shaderc_compilation_result_spv_binaryD0Ev[_ZN37shaderc_compilation_result_spv_binaryD5Ev]+0x1f): undefined reference to `spvBinaryDestroy'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(compiler.cc.o): in function `shaderc_util::GlslangInitializer::GlslangInitializer()':
(.text+0x22e): undefined reference to `glslang::InitializeProcess()'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(compiler.cc.o): in function `shaderc_util::GlslangInitializer::~GlslangInitializer()':
(.text+0x2e1): undefined reference to `glslang::FinalizeProcess()'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(compiler.cc.o): in function `shaderc_util::Compiler::PreprocessShader(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, shaderc_util::string_piece const&, shaderc_util::string_piece const&, shaderc_util::CountingIncluder&) const':
(.text+0x5abe): undefined reference to `glslang::TShader::TShader(EShLanguage)'
/usr/bin/ld: (.text+0x5b09): undefined reference to `glslang::TShader::setStringsWithLengthsAndNames(char const* const*, int const*, char const* const*, int)'
/usr/bin/ld: (.text+0x5b6b): undefined reference to `glslang::TShader::setInvertY(bool)'
/usr/bin/ld: (.text+0x5b7a): undefined reference to `glslang::TShader::setNanMinMaxClamp(bool)'
/usr/bin/ld: (.text+0x5c20): undefined reference to `glslang::TShader::preprocess(TBuiltInResource const*, int, EProfile, bool, bool, EShMessages, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, glslang::TShader::Includer&)'
/usr/bin/ld: (.text+0x5c34): undefined reference to `glslang::TShader::getInfoLog()'
/usr/bin/ld: (.text+0x5d3c): undefined reference to `glslang::TShader::~TShader()'
/usr/bin/ld: (.text+0x5d81): undefined reference to `glslang::TShader::getInfoLog()'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(compiler.cc.o): in function `shaderc_util::Compiler::Compile(shaderc_util::string_piece const&, EShLanguage, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, std::function<EShLanguage (std::ostream*, shaderc_util::string_piece const&)> const&, shaderc_util::CountingIncluder&, shaderc_util::Compiler::OutputType, std::ostream*, unsigned long*, unsigned long*) const':
(.text+0x67e4): undefined reference to `glslang::TShader::TShader(EShLanguage)'
/usr/bin/ld: (.text+0x6836): undefined reference to `glslang::TShader::setStringsWithLengthsAndNames(char const* const*, int const*, char const* const*, int)'
/usr/bin/ld: (.text+0x6853): undefined reference to `glslang::TShader::setEntryPoint(char const*)'
/usr/bin/ld: (.text+0x6863): undefined reference to `glslang::TShader::setAutoMapBindings(bool)'
/usr/bin/ld: (.text+0x6888): undefined reference to `glslang::TShader::setAutoMapLocations(bool)'
/usr/bin/ld: (.text+0x68a3): undefined reference to `glslang::TShader::setShiftImageBinding(unsigned int)'
/usr/bin/ld: (.text+0x68b7): undefined reference to `glslang::TShader::setShiftSamplerBinding(unsigned int)'
/usr/bin/ld: (.text+0x68cb): undefined reference to `glslang::TShader::setShiftTextureBinding(unsigned int)'
/usr/bin/ld: (.text+0x68df): undefined reference to `glslang::TShader::setShiftUboBinding(unsigned int)'
/usr/bin/ld: (.text+0x68f3): undefined reference to `glslang::TShader::setShiftSsboBinding(unsigned int)'
/usr/bin/ld: (.text+0x6907): undefined reference to `glslang::TShader::setShiftUavBinding(unsigned int)'
/usr/bin/ld: (.text+0x6917): undefined reference to `glslang::TShader::setHlslIoMapping(bool)'
/usr/bin/ld: (.text+0x692b): undefined reference to `glslang::TShader::setResourceSetBinding(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&)'
/usr/bin/ld: (.text+0x6970): undefined reference to `glslang::TShader::setInvertY(bool)'
/usr/bin/ld: (.text+0x6980): undefined reference to `glslang::TShader::setNanMinMaxClamp(bool)'
/usr/bin/ld: (.text+0x6a0c): undefined reference to `glslang::TShader::parse(TBuiltInResource const*, int, EProfile, bool, bool, EShMessages, glslang::TShader::Includer&)'
/usr/bin/ld: (.text+0x6a1b): undefined reference to `glslang::TShader::getInfoLog()'
/usr/bin/ld: (.text+0x6a99): undefined reference to `glslang::TProgram::TProgram()'
/usr/bin/ld: (.text+0x6ad9): undefined reference to `glslang::TProgram::link(EShMessages)'
/usr/bin/ld: (.text+0x6af0): undefined reference to `glslang::TProgram::getInfoLog()'
/usr/bin/ld: (.text+0x6ba1): undefined reference to `glslang::GlslangToSpv(glslang::TIntermediate const&, std::vector<unsigned int, std::allocator<unsigned int> >&, glslang::SpvOptions*)'
/usr/bin/ld: (.text+0x6c40): undefined reference to `glslang::TProgram::~TProgram()'
/usr/bin/ld: (.text+0x6c4c): undefined reference to `glslang::TShader::~TShader()'
/usr/bin/ld: (.text+0x72f9): undefined reference to `glslang::TShader::setTextureSamplerTransformMode(EShTextureSamplerTransformMode)'
/usr/bin/ld: (.text+0x7614): undefined reference to `spvOptimizerOptionsCreate'
/usr/bin/ld: (.text+0x762b): undefined reference to `spvOptimizerOptionsSetPreserveBindings'
/usr/bin/ld: (.text+0x76f0): undefined reference to `spvOptimizerOptionsDestroy'
/usr/bin/ld: (.text+0x7745): undefined reference to `glslang::TProgram::mapIO(glslang::TIoMapResolver*, glslang::TIoMapper*)'
/usr/bin/ld: (.text+0x782c): undefined reference to `spvOptimizerOptionsDestroy'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(compiler.cc.o): in function `shaderc_util::Compiler::PreprocessShader(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, shaderc_util::string_piece const&, shaderc_util::string_piece const&, shaderc_util::CountingIncluder&) const [clone .cold]':
(.text.unlikely+0x3ba): undefined reference to `glslang::TShader::~TShader()'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(compiler.cc.o): in function `shaderc_util::Compiler::Compile(shaderc_util::string_piece const&, EShLanguage, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, std::function<EShLanguage (std::ostream*, shaderc_util::string_piece const&)> const&, shaderc_util::CountingIncluder&, shaderc_util::Compiler::OutputType, std::ostream*, unsigned long*, unsigned long*) const [clone .cold]':
(.text.unlikely+0x40e): undefined reference to `spvOptimizerOptionsDestroy'
/usr/bin/ld: (.text.unlikely+0x434): undefined reference to `glslang::TProgram::~TProgram()'
/usr/bin/ld: (.text.unlikely+0x440): undefined reference to `glslang::TShader::~TShader()'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(spirv_tools_wrapper.cc.o): in function `shaderc_util::SpirvToolsDisassemble(shaderc_util::Compiler::TargetEnv, shaderc_util::Compiler::TargetEnvVersion, std::vector<unsigned int, std::allocator<unsigned int> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)':
(.text+0x266): undefined reference to `spvtools::SpirvTools::SpirvTools(spv_target_env)'
/usr/bin/ld: (.text+0x3d5): undefined reference to `spvtools::SpirvTools::SetMessageConsumer(std::function<void (spv_message_level_t, char const*, spv_position_t const&, char const*)>)'
/usr/bin/ld: (.text+0x401): undefined reference to `spvtools::SpirvTools::Disassemble(std::vector<unsigned int, std::allocator<unsigned int> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, unsigned int) const'
/usr/bin/ld: (.text+0x5c5): undefined reference to `spvtools::SpirvTools::~SpirvTools()'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(spirv_tools_wrapper.cc.o): in function `shaderc_util::SpirvToolsAssemble(shaderc_util::Compiler::TargetEnv, shaderc_util::Compiler::TargetEnvVersion, shaderc_util::string_piece, spv_binary_t**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)':
(.text+0x728): undefined reference to `spvContextCreate'
/usr/bin/ld: (.text+0x768): undefined reference to `spvTextToBinary'
/usr/bin/ld: (.text+0xaf0): undefined reference to `spvDiagnosticDestroy'
/usr/bin/ld: (.text+0xaf8): undefined reference to `spvContextDestroy'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(spirv_tools_wrapper.cc.o): in function `shaderc_util::SpirvToolsOptimize(shaderc_util::Compiler::TargetEnv, shaderc_util::Compiler::TargetEnvVersion, std::vector<shaderc_util::PassId, std::allocator<shaderc_util::PassId> > const&, spvtools::OptimizerOptions&, std::vector<unsigned int, std::allocator<unsigned int> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*)':
(.text+0xcf2): undefined reference to `spvValidatorOptionsCreate'
/usr/bin/ld: (.text+0xd09): undefined reference to `spvValidatorOptionsSetSkipBlockLayout'
/usr/bin/ld: (.text+0xd16): undefined reference to `spvValidatorOptionsSetRelaxLogicalPointer'
/usr/bin/ld: (.text+0xd23): undefined reference to `spvValidatorOptionsSetBeforeHlslLegalization'
/usr/bin/ld: (.text+0xd35): undefined reference to `spvOptimizerOptionsSetValidatorOptions'
/usr/bin/ld: (.text+0xd49): undefined reference to `spvOptimizerOptionsSetRunValidator'
/usr/bin/ld: (.text+0xd6c): undefined reference to `spvtools::Optimizer::Optimizer(spv_target_env)'
/usr/bin/ld: (.text+0xf0e): undefined reference to `spvtools::Optimizer::SetMessageConsumer(std::function<void (spv_message_level_t, char const*, spv_position_t const&, char const*)>)'
/usr/bin/ld: (.text+0xf63): undefined reference to `spvtools::CreateCompactIdsPass()'
/usr/bin/ld: (.text+0xf72): undefined reference to `spvtools::Optimizer::RegisterPass(spvtools::Optimizer::PassToken&&)'
/usr/bin/ld: (.text+0xf7a): undefined reference to `spvtools::Optimizer::PassToken::~PassToken()'
/usr/bin/ld: (.text+0xfb8): undefined reference to `spvtools::Optimizer::Run(unsigned int const*, unsigned long, std::vector<unsigned int, std::allocator<unsigned int> >*, spv_optimizer_options_t*) const'
/usr/bin/ld: (.text+0x1092): undefined reference to `spvtools::Optimizer::~Optimizer()'
/usr/bin/ld: (.text+0x109e): undefined reference to `spvValidatorOptionsDestroy'
/usr/bin/ld: (.text+0x10d8): undefined reference to `spvtools::Optimizer::RegisterPerformancePasses()'
/usr/bin/ld: (.text+0x10f0): undefined reference to `spvtools::Optimizer::RegisterLegalizationPasses()'
/usr/bin/ld: (.text+0x110b): undefined reference to `spvtools::CreateStripDebugInfoPass()'
/usr/bin/ld: (.text+0x111a): undefined reference to `spvtools::Optimizer::RegisterPass(spvtools::Optimizer::PassToken&&)'
/usr/bin/ld: (.text+0x1130): undefined reference to `spvtools::Optimizer::RegisterSizePasses()'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(spirv_tools_wrapper.cc.o): in function `shaderc_util::SpirvToolsDisassemble(shaderc_util::Compiler::TargetEnv, shaderc_util::Compiler::TargetEnvVersion, std::vector<unsigned int, std::allocator<unsigned int> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) [clone .cold]':
(.text.unlikely+0x18): undefined reference to `spvtools::SpirvTools::~SpirvTools()'
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libshaderc_combined.a(spirv_tools_wrapper.cc.o): in function `shaderc_util::SpirvToolsOptimize(shaderc_util::Compiler::TargetEnv, shaderc_util::Compiler::TargetEnvVersion, std::vector<shaderc_util::PassId, std::allocator<shaderc_util::PassId> > const&, spvtools::OptimizerOptions&, std::vector<unsigned int, std::allocator<unsigned int> >*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*) [clone .cold]':
(.text.unlikely+0x133): undefined reference to `spvtools::Optimizer::~Optimizer()'
/usr/bin/ld: (.text.unlikely+0x13f): undefined reference to `spvValidatorOptionsDestroy'
/usr/bin/ld: (.text.unlikely+0x1ac): undefined reference to `spvtools::Optimizer::PassToken::~PassToken()'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/gl_vk_chopper.dir/build.make:611: bin_x64/Release/gl_vk_chopper_app] Error 1
make[1]: *** [CMakeFiles/Makefile2:158: CMakeFiles/gl_vk_chopper.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

Any ideas?

faveoled avatar Nov 19 '24 10:11 faveoled

no ideas, but we are about to archive this sample as it isn't well maintained.

pixeljetstream avatar Nov 23 '24 15:11 pixeljetstream

that's sad

faveoled avatar Nov 23 '24 15:11 faveoled