Не могу получить цель из тройки - PullRequest
1 голос
/ 03 мая 2019

LLVM не может найти цель из тройки.Моя тройная система по умолчанию - «i686-pc-win32» (я пытался изменить ее на «i686-pc-windows-msvc», но она все еще не работала).

Я не мог думать/ я многое узнал об изменении тройки, везде, где я смотрел, казалось, что люди, у которых была эта проблема, решили ее более 5 лет назад, просто изменив тройку, но по какой-то причине она не будет работать для меня.

Помимо измененияТройка, которую я также проверил, чтобы проверить модуль (что в порядке), и когда я вызываю функцию LLVM.PrintModuleToFile(), она печатает все правильно (и тогда я могу использовать llc и clang, чтобы связать его с файлом .cpp, но затемЯ получаю другую ошибку, а именно: «A.obj: фатальная ошибка LNK1143: неверный или поврежденный файл: нет символа для секции COMDAT 0x5»).

var targetTriple = Marshal.PtrToStringAnsi(LLVM.GetDefaultTargetTriple());
//targetTriple = "i686-pc-windows-msvc";

if (LLVM.GetTargetTriple(targetTriple, out var target, out var err)) {
    Console.WriteLine(err);
    Console.ReadLine();
    return;
}

При запуске этого кода вводится тело if иотображается следующая ошибка: «Нет доступных целей, совместимых с этой тройкой».

Заранее благодарен за любую помощь!

...