Я создал новый проект на C ++ в Visual Studio 2008. Код еще не написан; Изменились только настройки проекта.
Когда я компилирую проект, я получаю следующую фатальную ошибку:
фатальная ошибка LNK1104: невозможно открыть файл 'C: \ Program.obj'
visual-c++
linker
Джош Склэр
источник
источник
"C:\Program Files\sofware sdk\lib\library.lib"
. Отсутствие a;
также приведет к неправильной компиляции проекта.Это может произойти, если файл все еще работает.
источник
Проблема исчезла для меня после закрытия и повторного открытия Visual Studio. Не уверен, почему возникла проблема, но, возможно, стоит попробовать.
Это было на VS 2013 Ultimate, Windows 8.1.
источник
Также убедитесь, что у вас не включено: Свойства конфигурации -> C / C ++ -> Препроцессор -> Предварительная обработка в файл .
источник
У меня была такая же проблема. Она вызывалась знаком "," в имени папки дополнительного пути к библиотеке. Решалась изменением пути к дополнительной библиотеке.
источник
Моя проблема заключалась в отсутствии
.lib
расширения, я просто связывал его,mylib
и VS решил его найтиmylib.obj
.источник
В моем случае речь шла о неверно направленной ссылке. Project ссылался на результат другого проекта, но последний не выводил файл, в котором искал первый.
источник
Решение 1 (для моего случая): перезапустите процесс Windows Explorer (да, файловый менеджер Windows).
Решение 2:
Я предполагаю, что иногда файловая система или тот, кто ее контролирует, теряются со своими разрешениями. Перед перезапуском сеанса Windows пытался убить
msbuild32.exe
процессы зомби , перезапустить визуальную студию, не проверять, даже показывая файл проблемы. Нет проблем с конфигурацией сборки. Это случается время от времени. Что-то внутреннее в Windows не исправляется, требуется перезагрузка.источник
У меня была такая же ошибка, только с пакетом Nuget, который я установил (тот, который не является только заголовком), а затем попытался удалить.
Что было неправильно для меня, так это то, что я все еще включал заголовок для пакета, который я только что удалил, в одном из моих файлов .cpp (довольно глупо, да).
Я даже удалил ссылки на дополнительные каталоги библиотеки
Project -> Properties -> Linker -> General
, но, конечно, безрезультатно, поскольку я все еще пытался ссылаться на несуществующий заголовок.Определенно сбивающее с толку сообщение об ошибке в этом случае, поскольку имя заголовка было,
<boost/filesystem.hpp>
но ошибка дала мне,"cannot open file 'llibboost_filesystem-vc140-mt-gd-1_59.lib'"
а номера строк или что-то еще.источник
У меня была такая же проблема, но решения для моего случая в ответах нет. Моя антивирусная программа (AVG) определила файл
MyProg.exe
как вирус и поместила его в «хранилище вирусов». Вам нужно проверить это хранилище, и если файл там - то просто восстановите его. Мне это помогло.источник
Для проекта сборки (ProjectName -> Build Dependencies -> Build Customizations -> masm (selected)) установка параметра Generate Preprocessed Source Listing на True вызвала проблему и для меня, очистка настройки устранила ее. VS2013 здесь.
источник
У меня та же проблема с компоновщиком, который жалуется на отсутствие основного исполняемого файла. Это произошло во время переноса нашего решения на новую Visual Studio 2013 . Решение представляет собой разнообразное сочетание управляемых и неуправляемых проектов / кода. Проблема (и решение) заключалась в отсутствии файла app.config в папке решения. Потребовался день, чтобы понять это :(, поскольку журнал вывода не очень помог.
источник
Я проверил все свои настройки по этому списку: http://msdn.microsoft.com/en-us/library/ts7eyw4s.aspx#feedback . Это полезно для меня, и в моей ситуации я обнаружил, что Link Dependency для свойств проектов имеет двойные кавычки, которых не должно быть.
источник
Я отвечаю, потому что не вижу этого конкретного решения в списке других.
По-видимому, мой антивирус (Ad-Aware) отмечал DLL, от которой зависит один из моих проектов, и удалял ее. Даже после исключения каталога, в котором находится DLL, такое же поведение продолжалось до тех пор, пока я не перезагрузил свой компьютер.
источник
В моем случае я заменил файлы математической библиотеки из предыдущего курса Game Engine Graphics на GLM. Проблема заключалась в том, что я не добавил их в проект в обозревателе решений Visual Studio (даже если они были в репозитории проекта).
источник
У меня была эта проблема в сочетании с ошибкой LNK2038, и я следил за этим сообщением, чтобы разделить библиотеки DLL RELEASE и DEBUG. В этом процессе я очистил всю папку, в которой находились эти зависимости.
К счастью, у меня была резервная копия всех этих файлов, и я получил файл, для которого эта ошибка отбрасывалась обратно в папку DEBUG, чтобы решить проблему. Код ошибки каким-то образом вводил в заблуждение, так как мне пришлось потратить много времени, чтобы снова прийти к этому совету из одного из ответов из этого сообщения.
Надеюсь, этот ответ поможет кому-то в нужде.
источник
Я решил его добавление в существующий проект к моему решению , которое я забыл добавить в первый раз.
источник
У меня была такая же ошибка:
Это было вызвано
;
в конце. Если у вас несколько библиотек, их следует разделять пустым пространством (пробел), без запятой или точкой с запятой!Так что не используйте
;
или что-либо еще при перечислении библиотек вProject properties >> Configuration Properties >> Linker >> Inputисточник
Я пробовал вышеуказанное решение, но у меня не получилось. Поэтому я переименовал exe и перестроил решение. Меня устраивает.
источник
У меня была эта точная ошибка при создании VC ++ DLL в Visual Studio 2019:
Оказалось, что в разделе «Свойства проекта»> «Компоновщик»> «Входные данные»> «Файл определения модуля» я указал файл def, в конце имени которого была заключена двойная кавычка . Удаление двойных кавычек без совпадений решило проблему.
источник
Убили
msbuild32.exe
и построили снова. У меня это сработало.источник
Я столкнулся с той же проблемой с «Visual Studio 2013».
Это разрешилось после закрытия и повторного запуска Visual Studio.
источник
У меня была та же проблема, я только что скопировал код в новый проект и начал сборку. Начала приходить какая-то другая ошибка. ошибка C4996: 'fopen': эта функция или переменная может быть небезопасной. Вместо этого рассмотрите возможность использования fopen_s
Чтобы снова решить эту проблему, я добавил свое единственное свойство в проект Project, как показано ниже. Проект -> Свойства -> Свойство конфигурации -> c / c ++. В этой категории есть имя поля. Определения препроцессора. Я добавил _CRT_SECURE_NO_WARNINGS это, чтобы решить проблему. Надеюсь, это поможет ...
Спасибо
источник