我正在通过 MoltenVK 包装器在 OS X 上为 Vulkan 设置开发环境。我使用 Xcode IDE。
- 我从 lunarG 网站下载了 VulkanSDK。
配置了包含。
添加(复制)
libvulkan.1.1.121.dylib
到libvulkan.1.dylib
项目中,然后将它们添加到Build Phases -> Link Binary With Libraries of the target。
示例代码是:
#include <vulkan/vulkan.h>
#include <GLFW/glfw3.h>
#include <stdlib.h>
#include <stdio.h>
VkInstance instance;
void createInstance() {
VkApplicationInfo appInfo = {};
appInfo.sType = VK_STRUCTURE_TYPE_APPLICATION_INFO;
appInfo.pApplicationName = "Hello Triangle";
appInfo.applicationVersion = VK_MAKE_VERSION(1, 1, 0);
appInfo.pEngineName = "No Engine";
appInfo.engineVersion = VK_MAKE_VERSION(1, 1, 0);
appInfo.apiVersion = VK_API_VERSION_1_1;
VkInstanceCreateInfo createInfo = {};
createInfo.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
createInfo.pApplicationInfo = &appInfo;
uint32_t glfwExtensionCount = 0;
const char** glfwExtensions;
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
createInfo.enabledExtensionCount = glfwExtensionCount;
createInfo.ppEnabledExtensionNames = glfwExtensions;
createInfo.enabledLayerCount = 0;
if (vkCreateInstance(&createInfo, nullptr, &instance) != VK_SUCCESS)
{
printf("failed to create instance!");
}
}
int main(int argc, const char * argv[]) {
createInstance();
return 0;
}
我没有收到链接器错误。
当我启动应用程序时,我不断收到:
dyld:库未加载:@rpath/libvulkan.1.dylib 引用自:/Users/xxxxx/Library/Developer/Xcode/DerivedData/VulkanApp-aybsxkpxiqbshfebkfpcwaoiuige/Build/Products/Debug/VulkanApp 原因:找不到图像
然后 Xcode 向我展示了以下反汇编:
我的硬件设置是:
MacBook Pro。macOS 10.14.6
两个 GPU:
- Radeon Pro 555
- 英特尔核芯显卡 630