3
falseを返します。バルカンとGLFW - glfwVulkanSupported()は、常に私はGLFW3.2を使用して、基本的なバルカンテストを実行しようとしている
cmake_minimum_required(VERSION 3.5.1)
project(vktest)
set (CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_COMPILER "/usr/bin/g++-4.9")
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
find_package(Vulkan REQUIRED)
find_package(glfw3 3.2 REQUIRED)
include_directories(${Vulkan_INCLUDE_DIRS})
message("kek")
message(${Vulkan_INCLUDE_DIRS})
message(${Vulkan_LIBRARIES})
message(${Vulkan_LIBRARY})
add_executable(vktest vulkanTest.cpp)
target_link_libraries(vktest ${Vulkan_LIBRARIES})
target_link_libraries(vktest glfw)
:私は次のようにcmakeを使用してビルド
#include <vulkan/vulkan.h>
#include <GLFW/glfw3.h>
#include <iostream>
int main(int argc, char *argv[])
{
if (glfwVulkanSupported())
{
std::cout << "vulkan supported !" << std::endl;
}
else
{
std::cout << "vulkan NOT supported !" << std::endl;
}
return 0;
}
これはうまくいきます。
私はプログラムを実行するとき、私はいつもelseステートメントに入ります。私はキューブの例を実行することができますだけでなく
export VULKAN_SDK=/home/mathias/vulkan/VulkanSDK/1.0.42.2/x86_64
set PATH $VULKAN_SDK/bin $PATH
set LD_LIBRARY_PATH $VULKAN_SDK/lib $LD_LIBRARY_PATH
set VK_LAYER_PATH $VULKAN_SDK/etc/explicit_layer.d
:
私はnvidiaの最後のドライバは、以下の の環境変数とlunargのVULKAN SDKをインストールしました。なぜそれが決して真実を返さないのか?
glfwのマニュアルでは、マクロを定義するか、glfwヘッダーの前にvulkanヘッダーを含めるかを指定します。何らかの理由で私は最初に2番目のマクロを試しましたが、マクロを定義するだけで動作するようです。だから、それはすべて私のために良いです、ありがとう! – Mathias
@マティアスそれは実装に応じているかもしれません。このAPIは非常に若く、回避策が必要なバージョンが存在する可能性があります。同様に、古いVIsual Studioライブラリでは、iostreamで文字列を正しく動作させるために、ヘッダの後にが含まれていました。私はより古いKhronosのプロジェクトvulkan-hppヘッダーを使用しました。おそらくこれが当時の唯一の方法でした。 –
Swift