Я строю универсальное приложение для Windows на C ++, в котором я использую librtmp. Я работал с кучей сообщений об ошибках, но не могу решить одно из них:
LINK : fatal error LNK1181: cannot open input file 'C:\OpenSSL-Win64\lib.obj'
Я сделал Ctrl+сдвиг+е во всем проекте, и я нигде не смог найти ссылку на lib.obj, поэтому я не знаю, где этот файл связан. Я проверил, правильно ли были установлены дополнительные зависимости, без кавычек, что имело место ,
Я также попытался запустить процесс связывания с флагом / verbose, но он не дал никакой полезной информации:
1>
1> Starting pass 1
1>LINK : fatal error LNK1181: cannot open input file 'C:\OpenSSL-Win64\lib.obj'
Кто-нибудь есть идеи, как решить эту проблему, или какие-либо указатели о том, как лучше диагностировать процесс связывания?
Линкер vc ++ довольно verbose, когда включен ключ / verbose. Судя по тому, что вы получили в ответ, он даже не начал искать в библиотеках объект. Это означает, что файл obj является частью ввода непосредственно в командной строке компоновщиков.
Проверьте свойства «CommandLine» для данного объекта (возможно, он пробирается туда в виде какого-то макроса?). Также убедитесь, что вы не наследуете некоторые «Дополнительные зависимости» от другой конфигурации. Кроме того, убедитесь, что вы проверили «Дополнительные зависимости» для конфигурации / платформы, которую вы строите.
Кроме того, в разделе Инструменты -> Параметры -> Проекты и решения -> Построить и выполнить, увеличьте детализацию вывода msbuild. Таким образом, вы также получаете команды actall, передаваемые различным инструментам. (Это в основном контент из файлов ответов.) Требуемый объект должен каким-то образом закончиться этим, а увеличение многословия должно дать вам возможность узнать, откуда он на самом деле.
Других решений пока нет …