Включить C++ Модули TS в clang-cl
Я использую Clang (от LLVM версии 7.00) на Windows через clang-cl
,
Я пытаюсь заставить работать модули C++. Я пробовал аргументы командной строки clang -fmodules-ts
а также -fmodules
,
Я также попробовал msvc
аргументы командной строки (которые работают под MSVC - я использую 15.8.5) /experimental:module /module:interface
(что было бы нормальным способом для неэкспериментальных вариантов).
Все опции приводят к ошибке clang-cl.exe: warning: unknown argument ignored in clang-cl
,
Кто-нибудь знает, возможно ли использовать модули C++ TS под clang-cl
?
1 ответ
Использовать опцию-Xclang
, как это:
clang-cl -Xclang -fmodules
Чтобы включить поддержку модулей C++, вам понадобится последняя версия clang 10.0 (подозреваю, что да), которую можно загрузить с этого URL-адреса в качестве последней сборки моментального снимка:
https://llvm.org/builds/
С Visual Studio 2019 / windows - проверьте следующий репозиторий git:
git clone https://github.com/NTSFka/CMakeCxxModules.git
Откройте папку с Visual Studio 2019, выбрав Конфигурация> Управляемые конфигурации.
Добавьте конфигурацию x64-CLang-Debug, выберите ее.
Установите флажок "Показать дополнительные переменные" и в CMAKE_C_COMPILER
Выбрать
C:/Program Files/LLVM/bin/clang.exe
и из CMAKE_CXX_COMPILER
Выбрать
C:/Program Files/LLVM/bin/clang++.exe
Скомпилируйте программу.
То, что я тестировал сам, intellisense работает, но все же некоторый текст отображается красным цветом (vs2019, 16.3.7), ситуация может измениться с обновлениями Visual Studio.