CLang не может найти "link.exe" - PullRequest
0 голосов
/ 09 марта 2020

Я знаю, что об этом спрашивали кучу раз ... из того, что я могу сказать, эта ошибка, кажется, происходит по разным причинам (все очевидно связаны с "link.exe", не найдена), и ни один из ответов, которые я мы нашли решить проблему. В добавление к этому clang не может найти link.exe, но -I- может найти его через переменную окружения PATH (и любая оболочка / cmd / терминал, который я запускаю, может найти его, но сам clang не может)

В моем случае я запускаю clang с флагом -v, а затем в какой-то момент выдает:

"link.exe" -out:odbc.dll -defaultlib:libcmt -nologo -dll -implib:odbc.lib odbc.obj odbc32.lib
clang.exe: error: unable to execute command: program not executable

Если я запускаю точно такую ​​же команду ссылки (двойные кавычки и все) за пределами из clang он связывает / компилирует и дает мне odbc.dll (потому что я уже добавил инструменты компилятора V C в свою переменную окружения PATH).

Почему это так?

Команда ввода: clang -mwindows -shared -o odbc.dll odbc.obj -lodbc32 -v

То же самое происходит с clang-cl и соответствующими флагами. И gcc, и cl.exe работают иначе, я просто не могу заставить clang работать (и мне нужно проверить clang)

Моя переменная окружения в порядке и не содержит непреднамеренных символов Я дважды проверил.

...