Возможно ли запустить cling на Windows?
Я успешно скомпилировал цепочку из источников (инструкции по сборке) с Visual C ++ 12.0, но при попытке запустить у меня появляется следующая ошибка времени выполнения:
F:\Dev\open-source\Cling\src\build\Debug\bin>cling.exe
ERROR in cling::CIFactory::createCI():
resource directory F:\Dev\open-source\Cling\src\build\Debug\lib\clang\3.6.0 not found!
Assertion failed: !CurTokenLexer && "Cannot #include a file inside a macro!", file ..\..\..\..\..\tools\clang\lib\Lex\PPLexerChange.cpp, line 73
Я гуглил следующую ссылку:
Кстати, у меня есть Clang (Clang версия 3.6.0 (транк)), и все работает отлично.
Когда я бегу с cling -x c
, У меня все та же ошибка, но без утверждения (-x
означает обрабатывать последующие входные файлы как имеющие тип <язык>):
F:\Dev\open-source\Cling\src\build\Debug\bin>cling -x c
ERROR in cling::CIFactory::createCI():
resource directory F:\Dev\open-source\Cling\src\build\Debug\lib\clang\3.6.0 not found!
****************** CLING ******************
* Type C++ code and press enter to run it *
* Type .q to exit *
*******************************************
[cling]$ #include <stdio.h>
[cling]$ printf("%s", "test");
test
[cling]$
Из этого ссылка на сайт:
Ограничение цепляния в Windows происходит из-за того, что clang не поддерживает полностью схему искажения Windows, то есть она не совместима с двоичными файлами. Например, нельзя вызывать функцию, скомпилированную с помощью компилятора, отличного от clang / gcc.
— В последнее время наблюдается большой прогресс в этом направлении на стороне лягушек. Мы должны выяснить, почему цепляется мелом. Т.е. все правильно настроено в CIFactory в случае, когда ОС является windows.
— Поскольку C не имеет искажения цепляния в режиме C, он должен работать в Windows (т.е. cling -x c)…
Это проблема, над которой мы намерены работать в ближайшее время, и патчи приветствуются.
Из этого ссылка на сайт:
Ограничение цепляния в Windows происходит из-за того, что clang не поддерживает полностью схему искажения Windows, то есть она не совместима с двоичными файлами. Например, нельзя вызывать функцию, скомпилированную с помощью компилятора, отличного от clang / gcc.
В последнее время в этом направлении наблюдается значительный прогресс в этом направлении. Мы должны выяснить, почему цепляется мелом. Все готово
правильно в CIFactory в случае, когда ОС Windows.Так как C не имеет искажения цепляния в режиме C, он должен работать в Windows (т.е. cling -x c)
…
Это проблема, над которой мы намерены работать в ближайшее время, и патчи приветствуются.