my-vcpkg-triplets icon indicating copy to clipboard operation
my-vcpkg-triplets copied to clipboard

Using VS- build in Clang

Open aungthetnaing opened this issue 1 year ago • 3 comments

Are triplets for manually installed LLVM ? Can it be used with build-in Clang support in VS 2022 ?

I tried x64-win-llvm and getting the following:

Unable to find a valid Visual Studio instance with toolset version ClangCL The following Visual Studio instances were considered: C:\Program Files\Microsoft Visual Studio\2022\Enterprise The following paths were examined for Visual Studio instances: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary/Build\vcvarsall.bat C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools/MSVC\14.36.32532\bin/HostX86/x86\dumpbin.exe

CLang-CL toolchain is in C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\Llvm

aungthetnaing avatar Nov 21 '23 22:11 aungthetnaing

You need to have: image installed which is not the same as image

In general it should work with either.

Neumann-A avatar Nov 21 '23 22:11 Neumann-A

Yes, I have them both.

Any other CMake project works with -TClangCL properly in the same setup.

On Tue, Nov 21, 2023 at 2:45 PM Alexander Neumann @.***> wrote:

You need to have: [image: image] https://user-images.githubusercontent.com/30894796/284738753-3b85b2cc-d680-483b-8544-57d8743f3383.png installed which is not the same as [image: image] https://user-images.githubusercontent.com/30894796/284738813-161b3c97-f8f1-40f7-8ae7-df72132ca463.png

In general it should work with either.

— Reply to this email directly, view it on GitHub https://github.com/Neumann-A/my-vcpkg-triplets/issues/7#issuecomment-1821818428, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG3RZVQFKBFDDVZITSQ4HC3YFUVKHAVCNFSM6AAAAAA7VJPFT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRRHAYTQNBSHA . You are receiving this because you authored the thread.Message ID: @.***>

-- Sincerely yours, Aung Thet @.*** Kai Ming

aungthetnaing avatar Nov 22 '23 04:11 aungthetnaing

Unable to find a valid Visual Studio instance
with toolset version ClangCL

means that vcpkg tried to locate a toolset with the name ClangCL. However, vcpkg doesn't know how to look up custom toolsets apart from the vc14x ones.

https://github.com/Neumann-A/my-vcpkg-triplets/blob/cb4dc2eb68339a39e9f0de11fa530655c6f09aed/x64-win-llvm.cmake#L10-L12

The if(DEFINED VCPKG_PLATFORM_TOOLSET) is a trick to make vcpkg lookup vcvars without having a PLATFORM_TOOLSET defined and thus not looking for the ClangCL toolset but a normal vc14x one and then after the lookup switches the toolset back to ClangCL via the logic in the truplet.

Have you setup some environment variable which modifies the lookup behavior or have you modified the triplet?

Neumann-A avatar Nov 24 '23 17:11 Neumann-A