Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vulkan can';在Linux上找不到层库_Linux_Shared Libraries_Vulkan - Fatal编程技术网

Vulkan can';在Linux上找不到层库

Vulkan can';在Linux上找不到层库,linux,shared-libraries,vulkan,Linux,Shared Libraries,Vulkan,我的所有Vulkan SDK路径都源于.profile,并在回显时给出以下结果: 我可以枚举所有层,应用程序编译时不会出现问题。但是,当我运行它时,我从调试报告回调中得到以下错误消息: 我使用的是Ubuntu 17.10,GTX 1060带有387.42.05驱动程序,支持Vulkan 1.1 使用LD_DEBUG=libs运行应用程序时显示2个错误: /lib/x86_64-linux-gnu/libpthread.so.0:错误:符号查找错误:未定义符号:pthread_setname_

我的所有Vulkan SDK路径都源于.profile,并在回显时给出以下结果:

我可以枚举所有层,应用程序编译时不会出现问题。但是,当我运行它时,我从调试报告回调中得到以下错误消息:

我使用的是Ubuntu 17.10,GTX 1060带有387.42.05驱动程序,支持Vulkan 1.1

使用LD_DEBUG=libs运行应用程序时显示2个错误:

/lib/x86_64-linux-gnu/libpthread.so.0:错误:符号查找错误:未定义符号:pthread_setname_np,版本GLIBC_2.2.5(致命)

/home/jesta88/Vulkan/VulkanSDK/1.1.70.1/x86_64/lib/libVkLayer_参数_validation.so:错误:符号查找错误:未定义符号:VKNegateLoaderLayerInterface版本(致命)


我不知道如何解释这些错误。

我不能完全解释第一个错误,尽管我可以重现它。它前面有

calling init: /usr/lib/x86_64-linux-gnu/libGLX_nvidia.so.0
所以我怀疑英伟达司机正在寻找一个符号,但没找到。虽然这被标记为“致命”,但实际上并非如此

对于第二个错误,我也可以看到。我通过在SDK中运行
build\u examples.sh
脚本复制了它。然后:

cd examples/build
LD_DEBUG=libs ./cube --validate -c 300 2> log
应用程序运行良好

为了让自己相信验证层已经加载并正常工作,我通过注释调用
vkDestroyDescriptorPool
(cube.c中的第2252行)创建了一个验证错误,并得到了预期的验证错误

在本例中,我认为Vulkan加载程序试图在驱动程序中查找
VKNegateLoaderLayerInterfaceVersion
符号,但未能找到它。这也不是致命的情况,因为驱动程序导出此符号是可选的。如果加载器没有找到符号,那么它将采用加载器和驱动程序之间的特定协议。如果符号确实存在,加载程序将调用它以获取有关驱动程序支持的LoaderCD接口的附加信息

更多的细节可以在这里找到

简言之,我不认为这些是实际问题

编辑:当加载器尝试加载层而不是ICD(驱动程序)时,确实会出现
VKNegateLoaderLayerInterfaceVersion
问题,但同样的解释仍然适用

我仍然无法解释你得到的关于找不到图层的信息

我建议设置
VK\u LOADER\u DEBUG=all
,以获取有关Vulkan加载程序在查找层时正在执行的操作的详细信息


另外,试着运行我上面概述的多维数据集演示,看看该应用程序是否正确运行。

谢谢,我不知道VK_LOADER_DEBUG。我会试试,然后再报告。我遇到了类似的问题:你解决了吗,伙计?