I finally, found the reason and solution too.
There was my stupid fault - i feel a little shame about that.
I’ve run setup-env.sh from terminal and it sets environment variables locally, but my application was not child process for that terminal, and could not see those variables from terminal’s environment.
(but vulkaninfo i’ve run from the same terminal as setup-env.sh, thats why vulkaninfo could work correctly)
Actually, in my case there is no suit way to setup common environment - some time i need to run my application from terminal, sometime as child process of IDE, sometime as child process of debugger ans etc - so, i just copy all manifest files to default location: /home/<user_name>/.local/share/vulkan/explicit_layer.d, and now everything works fine.
Thanks for the help.
BTW, VK_EXT_debug_report helps a lot, especially you setup VK_DEBUG_REPORT_DEBUG_BIT_EXT and VK_DEBUG_REPORT_INFORMATION_BIT_EXT, in this case debug callback show you where the loader actually attempts to find manifest files.
In my case debug output looks like that:
DEBUG: loader Code 0: Searching the following paths for manifest files: /etc/vulkan/explicit_layer.d:/usr/share/vulkan/explicit_layer.d
DEBUG: loader Code 0: Searching the following path for manifest files: /home/bantdit/.local/share/vulkan/explicit_layer.d
DEBUG: loader Code 0: Searching the following paths for manifest files: /etc/vulkan/implicit_layer.d:/usr/share/vulkan/implicit_layer.d
DEBUG: loader Code 0: Searching the following path for manifest files: /home/bantdit/.local/share/vulkan/implicit_layer.d
INFO: loader Code 0: Found manifest file /home/bantdit/.local/share/vulkan/explicit_layer.d/VkLayer_object_tracker.json, version “1.0.0”
INFO: loader Code 0: Found manifest file /home/bantdit/.local/share/vulkan/explicit_layer.d/VkLayer_unique_objects.json, version “1.0.0”
INFO: loader Code 0: Found manifest file /home/bantdit/.local/share/vulkan/explicit_layer.d/VkLayer_swapchain.json, version “1.0.0”
INFO: loader Code 0: Found manifest file /home/bantdit/.local/share/vulkan/explicit_layer.d/VkLayer_api_dump.json, version “1.0.0”
INFO: loader Code 0: Found manifest file /home/bantdit/.local/share/vulkan/explicit_layer.d/VkLayer_image.json, version “1.0.0”
INFO: loader Code 0: Found manifest file /home/bantdit/.local/share/vulkan/explicit_layer.d/VkLayer_threading.json, version “1.0.0”
INFO: loader Code 0: Found manifest file /home/bantdit/.local/share/vulkan/explicit_layer.d/VkLayer_vktrace_layer.json, version “1.0.0”
INFO: loader Code 0: Found manifest file /home/bantdit/.local/share/vulkan/explicit_layer.d/VkLayer_core_validation.json, version “1.0.0”
INFO: loader Code 0: Found manifest file /home/bantdit/.local/share/vulkan/explicit_layer.d/VkLayer_screenshot.json, version “1.0.0”
INFO: loader Code 0: Found manifest file /home/bantdit/.local/share/vulkan/explicit_layer.d/VkLayer_parameter_validation.json, version “1.0.0”
INFO: loader Code 0: Found meta layer VK_LAYER_LUNARG_standard_validation, replacing with actual layer group
DEBUG: loader Code 0: Searching the following paths for manifest files: /etc/vulkan/icd.d:/usr/share/vulkan/icd.d
DEBUG: loader Code 0: Searching the following path for manifest files: /home/bantdit/.local/share/vulkan/icd.d
INFO: loader Code 0: Found manifest file /etc/vulkan/icd.d/nvidia_icd.json, version “1.0.0”
DEBUG: loader Code 0: Searching for ICD drivers named libGLX_nvidia.so.0 default dir
DEBUG: loader Code 0: Build ICD instance extension list
DEBUG: loader Code 0: Instance Extension: VK_KHR_surface (libGLX_nvidia.so.0) version 0.0.25
DEBUG: loader Code 0: Instance Extension: VK_KHR_xcb_surface (libGLX_nvidia.so.0) version 0.0.6
DEBUG: loader Code 0: Instance Extension: VK_KHR_xlib_surface (libGLX_nvidia.so.0) version 0.0.6
DEBUG: loader Code 0: Instance Extension: VK_EXT_debug_report (libGLX_nvidia.so.0) version 0.0.2
DEBUG: loader Code 0: Chain: instance: Loading layer library libVkLayer_unique_objects.so
INFO: loader Code 0: Insert instance layer VK_LAYER_GOOGLE_unique_objects (libVkLayer_unique_objects.so)
DEBUG: loader Code 0: Chain: instance: Loading layer library libVkLayer_swapchain.so
INFO: loader Code 0: Insert instance layer VK_LAYER_LUNARG_swapchain (libVkLayer_swapchain.so)
DEBUG: loader Code 0: Chain: instance: Loading layer library libVkLayer_core_validation.so
INFO: loader Code 0: Insert instance layer VK_LAYER_LUNARG_core_validation (libVkLayer_core_validation.so)
DEBUG: loader Code 0: Chain: instance: Loading layer library libVkLayer_image.so
INFO: loader Code 0: Insert instance layer VK_LAYER_LUNARG_image (libVkLayer_image.so)
DEBUG: loader Code 0: Chain: instance: Loading layer library libVkLayer_object_tracker.so
INFO: loader Code 0: Insert instance layer VK_LAYER_LUNARG_object_tracker (libVkLayer_object_tracker.so)
DEBUG: loader Code 0: Chain: instance: Loading layer library libVkLayer_parameter_validation.so
INFO: loader Code 0: Insert instance layer VK_LAYER_LUNARG_parameter_validation (libVkLayer_parameter_validation.so)
DEBUG: loader Code 0: Chain: instance: Loading layer library libVkLayer_threading.so
INFO: loader Code 0: Insert instance layer VK_LAYER_GOOGLE_threading (libVkLayer_threading.so)
DEBUG: loader Code 0: Build ICD instance extension list
DEBUG: loader Code 0: Instance Extension: VK_KHR_surface (libGLX_nvidia.so.0) version 0.0.25
DEBUG: loader Code 0: Instance Extension: VK_KHR_xcb_surface (libGLX_nvidia.so.0) version 0.0.6
DEBUG: loader Code 0: Instance Extension: VK_KHR_xlib_surface (libGLX_nvidia.so.0) version 0.0.6
DEBUG: loader Code 0: Instance Extension: VK_EXT_debug_report (libGLX_nvidia.so.0) version 0.0.2
it makes loading process clear enough.