4 ms·
Clang/LLVM Support in Visual Studio
- ocdtrekkie 8y agoPresumably Microsoft is doing this as part of their "reskin Chrome" initiative so that they can build the new Edge in Visual Studio. Chromium dropped support for MSVC a long time ago.
- HappySweeney 8y agohttps://chromium.googlesource.com/chromium/src/+/master/docs/windows_build_instructions.md#Visual-Studio https://chromium.googlesource.com/chromium/src/+/master/docs... seems to indicate otherwise
- ocdtrekkie 8y agoAs I said, that the MSVC compiler is not supported, Clang is required. And now Microsoft is building direct support for Clang into Visual Studio which will drastically simply the instructions in your link. Your link merely confirms that Visual Studio can be used as an IDE.
- fpoling 8y agoChromium does not use CMake, but a custom build system. So one still has to use a command line to build Chromium.
- paulirwin 8y agoHaving attended an ISO C++ meeting and hearing the very constructive dialogue between the various compiler teams and vendors, I am not that pessimistic. I believe they are trying to prove that they can be interoperable with other implementations, allowing you to use Visual Studio to build Clang/GCC projects if you so desire, which helps the ecosystem of C++ as a whole. If Microsoft only needed this for an internal tool for building Edge, they would have no need to go through the difficulty of releasing it to the public and having to support it.
- ocdtrekkie 8y agoI wouldn't be too surprised if they open sourced the new Edge at some point though, since it's a fork of Chromium anyways. In which having the capability to build it built into Visual Studio would make a lot of sense.
- zmodem 8y agoYou can already build Chrome in Visual Studio. clang is used to compile, but pressing F5 in Visual Studio will build it (with ninja), if there are errors you can click them and fix, and you can debug using the debugger in Visual Studio. This is how many Chrome developers work on Windows, and presumably that applies to the new Edge too. This blog post seems to be more like an official version of https://marketplace.visualstudio.com/items?itemName=LLVMExtensions.llvm-toolchain https://marketplace.visualstudio.com/items?itemName=LLVMExte... (but only for cmake projects), plus providing clang directly in the installer, which is really nice. But Chrome doesn't use CMake or MSBuild, and presumably the new Edge doesn't either, so I don't think it's related to that.
- marian_l 8y agoI am the PM Lead for the C++ team at Microsoft and I can say that the 2 initiatives are not related. The Clang/LLVM integration in VS is a natural continuation of our team's work to enable compelling cross-platform scenarios for all C++ developers, without imposing restrictions around the C++ tools you choose to use (https://aka.ms/cpp/launch/2019 https://aka.ms/cpp/launch/2019). So if you are already developing using Clang today, we want to make sure that VS is the best C++ IDE for you to do so, in the same way VS now also supports targeting Linux, CMake/CTest, Google Test and Boost.Test, clang-format, GCC and other non-MS C++ tools Visual Studio 2019 of course also comes with the new MSVC 19.20 toolset. Our goal with MSVC (https://aka.ms/msvc https://aka.ms/msvc) is to provide you with the best compiler choice on Windows for targeting Windows. Assuming you can choose your compiler, our recommendation is to use MSVC.
- jgowdy 8y agoThat's a pretty poor assumption. If you've been following either effort, Microsoft's involvement in Clang and their efforts to bring it to both Windows and Visual Studio predate the Edge moving to Chromium concept significantly.