Я пытаюсь скомпилировать следующий код и пытаюсь связать с libc ++. Lib
int main()
{
int x = -1;
// Some code
try {
if (x < 0)
{
throw x;
}
}
catch (int x ) {
}
return 0;
}
Скомпилировать CMD: clang-cl -Xclang -stdlib = libc ++ / MD / EHs c / c test. cpp LINK CMD: lld-link / NODEFAULTLIB test.obj libc ++. lib
Но это дает ошибку компоновщика:
lld-link: error: <root>: undefined symbol: mainCRTStartup
lld-link: error: undefined symbol: _CxxThrowException
>>> referenced by test.obj:(main)
lld-link: error: undefined symbol: __CxxFrameHandler3
>>> referenced by test.obj:(.xdata)
>>> referenced by test.obj:(.xdata)
lld-link: error: undefined symbol: const type_info::`vftable'
>>> referenced by test.obj:(int `RTTI Type Descriptor')
Я могу понять символ mainCRTStartup, мне нужно дать msvcrt.lib, но какая библиотека clang предоставляет определение для _CxxThrowException? Я не хочу использовать vcruntime et c.