Por que o erro fatal “LNK1104: não é possível abrir arquivo 'C: \ Program.obj'” ocorrem quando eu compilar um projeto C ++ no Visual Studio?
-
02-07-2019 - |
Pergunta
Eu criei um novo projeto C ++ no Studio 2008. Nenhum código Visual foi escrito ainda; Somente as configurações do projeto foram alterados.
Quando eu compilar o projeto, eu recebo o seguinte erro fatal:
fatal LNK1104 de erro: não é possível abrir arquivo 'C: \ Program.obj'
Solução
Esta questão em particular é causada por especificando uma dependência para um arquivo lib que tinha espaços em seu caminho. As necessidades de caminho para estar entre aspas para o projeto para compilar corretamente.
No Propriedades de configuração -> Linker -> Input de propriedades do projeto, há um Dependências adicionais propriedade. Este problema foi corrigido alterando esta propriedade a partir de:
C: \ Program Files \ sofware SDK \ lib \ library.lib
Para:
" C: \ Program Files \ sofware SDK \ lib \ library.lib "
Onde eu adicionei as citações.
Outras dicas
Isso pode acontecer se o arquivo ainda está em execução também.
: - 1: erro: LNK1104: pode arquivo não aberto 'debug \ **** exe'
O problema foi embora para mim depois de fechar e reabrir Visual Studio. Não sei por que o problema aconteceu, mas que pode valer a pena um tiro.
Este foi sobre VS 2013 Ultimate, o Windows 8.1.
Verifique também se você não tem esta ligado:. Propriedades de Configuração -> C / C ++ -> Pré-processador -> Preprocess para um arquivo
Eu tive o mesmo problem.It causada por um "" em nome de uma pasta de path.It biblioteca adicional resolvido alterando o caminho da biblioteca adicional.
Meu problema era uma extensão .lib
faltando, eu estava apenas ligando contra mylib
e VS decidiu procurar mylib.obj
.
No meu caso era uma questão de uma referência mal dirigido. Projeto referenciado a saída de outro projeto, mas este não fez saída do arquivo onde o antigo estava procurando.
Para um projeto de montagem (ProjectName -> dependências de compilação -> personalizações build -> masm (selecionado)), estabelecendo Gerar Fonte Listing preprocessed para true causou o problema para mim também, limpando a configuração fixa-lo. VS2013 aqui.
eu me deparo com o mesmo problema com vinculador reclamando do executável principal faltando. Isso aconteceu durante a nossa porta de solução para o novo Visual Studio 2013 . A solução é uma mistura variada de gestão e de gestão un projectos / código. O problema (e correção) acabou por ser uma falta app.config arquivo na pasta de solução. Tomou um dia para descobrir isso :(, como log de saída não foi muito útil.
Eu verifiquei todas as minhas configurações de acordo com esta lista: http: // msdn.microsoft.com/en-us/library/ts7eyw4s.aspx#feedback . É útil para mim e para a minha situação, eu descobrir que apontam dependência das propriedades dos projetos tem aspas, o que não deveria estar lá.
Eu tive o mesmo erro, apenas com um Nuget pacote que eu tinha instalado (um que não é somente cabeçalho) e depois tentou desinstalar.
O que estava errado para mim foi que eu ainda estava incluindo um cabeçalho para o pacote eu só desinstalado em um dos meus arquivos .cpp (muito bobo, sim).
Eu mesmo removeu os diretórios de bibliotecas adicionais ligar para ele em Project -> Properties -> Linker -> General
, mas é claro sem sucesso desde que eu ainda estava tentando fazer referência o cabeçalho inexistente.
Definitivamente, uma mensagem de erro confuso, neste caso, uma vez que o nome do cabeçalho foi <boost/filesystem.hpp>
mas o erro me deu "cannot open file 'llibboost_filesystem-vc140-mt-gd-1_59.lib'"
e sem números de linha ou nada.
Eu tive o mesmo problema, mas solução para o meu caso não é listado em respostas.
Meu programa antivírus (AVG) determinou MyProg.exe
arquivo como um vírus e colocá-lo no 'armazém vírus'. Você precisa verificar este armazém e se o arquivo está lá - então apenas restaurá-lo. Ele me ajudou a sair.
Solução 1 (para o meu caso):. Janelas reinício processo Explorer (sim, o arquivo janelas gerente)
Solução 2:
- Feche o Visual Studio. O Windows Logoff
- Logon, reabrir Visual Studio
- construir como de costume. Ele agora acumula e pode acessar o arquivo problemático.
Eu presumo que, por vezes, o sistema de arquivos ou quem está controlando ela se perde com suas permissões. Antes de reiniciar a sessão do Windows, tentou matar processos msbuild32.exe
zumbis, reinicie visual studio, nenhum cheque mesmo mostrando o arquivo problema de frente. Não há problemas de configuração construir. Isso acontece de vez em quando. Alguma coisa interna no Windows não fixar-se, necessita de um reinício.
Eu estou respondendo porque eu não vejo essa solução particular listados por qualquer outra pessoa.
Aparentemente meu antivírus (Ad-Aware) foi sinalizar uma DLL um dos meus projetos depende, e excluí-lo. Mesmo após a exclusão do diretório onde vive o DLL, o mesmo comportamento continuou até que eu reiniciei meu computador.
No meu caso, eu tinha substituído arquivos de biblioteca de matemática de uma gráfica anterior Game Engine curso com GLM. O problema era que eu não adicioná-los ao projeto dentro do Visual Studio Solution Explorer (apesar de estarem no repositório do projeto).
Eu tive esse problema em conjunto com o erro LNK2038, seguido este pós para segregar a libertação e as DLLs de depuração. Nesse processo eu tinha limpado toda a pasta onde essas dependências residiam.
Felizmente eu tinha um backup de todos os arquivos, e tenho o arquivo para o qual este erro estava jogando de volta para a pasta de depuração para resolver o problema. O código de erro era enganador, de alguma forma, como eu tive que gastar um monte de tempo para chegar a esta ponta de uma das respostas deste post novamente.
Hope esta resposta, ajuda a alguém em necessidade.
Eu resolvi por acrescentando um projeto existente para minha Solução , que eu esqueceu de add no primeiro tempo.
Eu tive o mesmo erro:
fatal error LNK1104: cannot open file 'GTest.lib;'
Isso foi causado pela ;
no final. Se você tiver várias bibliotecas, eles devem ser separados por um espaço vazio (barra de espaço), nenhuma vírgula ou ponto e vírgula!
Portanto, não usar ;
ou então qualquer coisa ao listar bibliotecas em Propriedades do projeto >> Propriedades de configuração >> Linker >> Input
Eu bati o mesmo problema com "Visual Studio 2013".
LNK1104: cannot open file 'debug\****.exe
É resolvido após fechar e re-iniciar o Visual Studio.
Eu estava tendo o mesmo problema, eu simplesmente copiou o código para novo projeto e começou a construção. Algum outro erro começaram a chegar. erro C4996: 'fopen': Esta função ou variável pode ser inseguro. Considere o uso de fopen_s vez
Para resolver esse problema novamente, eu adicionei a minha propriedade no projeto Projeto como abaixo. Projeto -> Propriedades -> propriedades Configuração -> c / c ++. Nesta categoria há um nome do campo Preprocessor Definitions Eu adicionei _CRT_SECURE_NO_WARNINGS isto para resolver o problema Espero que isso vai ajudar ...
Obrigado