Ошибка средств компоновщика LNK1181
не удается открыть входной файл "filename"
Компоновщик не удалось найти filename
, так как он не существует или путь не найден.
Ниже приведены некоторые распространенные причины ошибки LNK1181:
filename
ссылается как на дополнительную зависимость от строки компоновщика, но файл не существует.Инструкция /LIBPATH , указывающая, что каталог, содержащийся
filename
, отсутствует.
Чтобы устранить указанные выше проблемы, убедитесь, что все файлы, на которые ссылается строка компоновщика, присутствуют в системе. Также убедитесь, что существует инструкция /LIBPATH для каждого каталога, содержащего файл, зависящий от компоновщика.
Дополнительные сведения см. в разделе .lib Files as Linker Input.
Еще одна возможная причина LNK1181 заключается в том, что длинное имя файла со встроенными пробелами не было заключено в кавычки. В этом случае компоновщик распознает только имя файла до первого места, а затем предполагает расширение файла .obj. Решение этой ситуации заключается в том, чтобы заключить длинное имя файла (путь плюс имя файла) в кавычки.
Компиляция с параметром /P (предварительная обработка в файл) может привести к LNK1181, так как этот параметр подавляет создание .obj файлов.