Skip to content

Build fails on MSVC and MinGW Clang (PFN_VoidFunction issue) #131

@smikim

Description

@smikim

Hello,

I am trying to build the vk-gltf-viewer repository.

  1. Environment and attempts:

Vulkan SDK: 1.4.304 and 1.4.304.1

CMake: 3.30+

Ninja build

MSVC: 19.44.x (latest Community)

MinGW Clang + libc++ (MSYS2)

  1. Issue:

Building vulkan.cppm with MSVC fails with:

error C2039: 'PFN_VoidFunction' is not a member of 'vk'
error C2873: 'PFN_VoidFunction': symbol cannot be used in a using declaration

The same error occurs when building with MinGW Clang + libc++

  1. Additional information:

Both Vulkan-Hpp 1.4.304 and 1.4.304.1 produce the same error

The vk-gltf-viewer documentation states that MSVC 19.40+ is supported, but the build actually fails

[빌드 실패: vulkan.cppm MSVC 및 MinGW Clang 환경]

vk-gltf-viewer 저장소를 빌드하려고 합니다.

  1. 환경 및 시도:
  • Vulkan SDK: 1.4.304 및 1.4.304.1
  • CMake: 3.30 이상
  • Ninja 빌드
  • MSVC: 19.44.x (최신 Community)
  • MinGW Clang + libc++ (MSYS2)
  1. 문제:
    MSVC로 vulkan.cppm 빌드 시 다음 오류가 발생합니다:

error C2039: 'PFN_VoidFunction'은 'vk'의 멤버가 아닙니다
error C2873: 'PFN_VoidFunction': using 선언에서 기호를 사용할 수 없습니다

같은 오류가 MinGW Clang + libc++ 환경에서도 발생합니다.

  1. 추가 정보:
  • Vulkan-Hpp 1.4.304 및 1.4.304.1 모두 동일한 오류 발생
  • vk-gltf-viewer 문서에서는 MSVC 19.40 이상 지원한다고 되어 있지만 실제로 빌드 실패
  • 결론적으로 현재 환경에서는 MSVC와 MinGW Clang 모두 빌드 불가
  • Vulkan-Hpp 모듈과 vk-gltf-viewer 코드 간 호환성 문제로 보임

이 문제에 대한 패치나 우회 방법(workaround)이 존재하는지 확인 부탁드립니다.
In conclusion, the project cannot be built on either MSVC or MinGW Clang in the current environment.
It seems like a compatibility issue between the Vulkan-Hpp module and vk-gltf-viewer code.

Could you please provide any patch or workaround for this problem?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions