使用 GCC 与 vulkan 链接

Linking with vulkan using GCC

提问人:Crowbar 提问时间:11/16/2023 最后编辑:Crowbar 更新时间:11/18/2023 访问量:69

问:

我不确定为什么 gcc 找不到.vulkan.h

我明确告诉 gcc 去哪里找,但它仍然找不到它

在我的main.c中,我有

#include "vulkan.h"
int main(){}

编译我得到,

gcc main.c -L/usr/include -Ivulkan -lvulkan -o main
main.c:1:10: fatal error: vulkan.h: No such file or directory
    1 | #include "vulkan.h"
      |      

我也知道 vulkan.h 在 ./usr/include/vulkan

我做错了什么?

C linker vulkan

评论

1赞 Some programmer dude 11/16/2023
#define "vulkan.h"或?您遇到的实际错误是什么?请编辑您的问题,以包括最小的可重现示例以及完整和完整的构建日志。#include "vulkan.h"
0赞 Crowbar 11/17/2023
@Someprogrammerdude我输入错误,我的意思是 #include“vulkan.h”,我将编辑问题以创建最小的可重现示例

答:

1赞 Armali 11/16/2023 #1

我明确告诉 gcc 去哪里找,但它仍然找不到它。这是命令 -

gcc main.c -L/usr/include -Ivulkan -lvulkan -o main

我也知道 vulkan.h 在 /usr/include/vulkan 中

选项用于库链接,而不是用于搜索头文件,其中有 ;如果愿意,这里就得用到.-L-I#include "vulkan.h"-I/usr/include/vulkan

0赞 jpr42 11/18/2023 #2

除了阿玛利的回答是正确的。

根据官方文档,标头位于 Vulkan include 目录中。

#include <vulkan/vulkan.h>

int main(){}

但是,我不会将 Vulkan include 目录视为常规 include 目录。

使用,因为这些是您无法控制的系统标头。这避免了编译器警告和现代 C++ 工具的问题。-isystem dir