O Visual Studio erro:LNK1104:não é possível abrir o ficheiro 'kernel32.lib', apenas para WP8 projetos / Win32 compilações

StackOverflow https://stackoverflow.com//questions/21056470

Pergunta

Eu tive esse problema recentemente (há alguns dias atrás, tudo estava funcionando bem):O Visual Studio 2012 começou a se recusam a construir nativo WP8 projetos.

Hoje, eu criei uma nova solução a partir do modelo de Windows Phone Aplicativo Direct3D (Nativo) " para verificar se o meu recém-criado DLLs serão devidamente acompanhados no WP.Eu tentei compilar este projeto, sem quaisquer alterações ou referências adicionais - puro código gerado pelo VS.No entanto, ele falhou com o erro específico.Eu sei muito bem o que significa e o que poderia ser a possível razão, mas eu não consigo entender, hovewer, de onde ela vem, neste caso.Coisa estranha:isso só acontece no 'Win32' configuração do BRAÇO, compila multa:

1>------ Build started: Project: PhoneDirect3DApp, Configuration: Debug ARM ------
.......

Build Summary
-------------
00:11.742 - Success - Debug ARM - PhoneDirect3DApp\PhoneDirect3DApp.vcxproj

mas Win32 não:

1>------ Build started: Project: PhoneDirect3DApp, Configuration: Debug Win32 ------
.......
1>LINK : fatal error LNK1104: cannot open file 'kernel32.lib'

Build Summary
-------------
00:09.725 - Failed  - Debug Win32 - PhoneDirect3DApp\PhoneDirect3DApp.vcxproj

Meu padrão (C++nativo/Win32) projetos também funciona como esperado (em Win32 e plataforma x 64 alvos).

Configuração de projeto:(em ambas as plataformas)

Linker::Entrada:

d3d11.lib;%(AdditionalDependencies)

Linker::Ignorar:

ole32.lib;%(IgnoreSpecificDefaultLibraries)

VC++ Directories:

A Microsoft.BRAÇO.Cpp.Usuário:

$(WP80ToolSetPath)lib\arm;$(WindowsSDK_LibraryPath_ARM);

A Microsoft.Win32.Cpp.Usuário:

$(VCInstallDir)lib;$(VCInstallDir)atlmfc\lib;$(WP80ToolSetPath)lib\x86;$(WindowsSDK_LibraryPath_x86)

Todas as idéias que mais poderia ser errado ou configurado incorretamente?Estou a ficar sem ideias, eu nunca vi algo assim antes.

A propósito, tenho notado mais uma mudança:quando eu estava tentando compilar WP8 projetos no BRAÇO configurtion antes, havia sempre um erro, dizendo: "a construção do BRAÇO do aplicativo na área de trabalho não é suportado" (ou algo assim).Agora o BRAÇO compila sem problemas.É normal?

Foi útil?

Solução

Finalmente, eu encontrei a razão dos meus problemas:como eu suspeitava, interno Visual Studio configuração foi quebrado.

Eu fiz todos os passos comuns, que podem ser executadas em caso de LNK1104, no entanto:

- kernel32.lib was in valid location
- all include and library directories was correct
- standard *.props files were attached to each project

No entanto, a causa estava em outro lugar.

Todos os caminhos são definidos usando o padrão de macros.Um deles é de r $(WindowsSDK80Path), que é usado para criar incluir/caminhos de biblioteca.No meu sistema, esta macro foi definido como

C:\Program Files (x86)\Windows Phone Kits\8.0

em vez de

C:\Program Files (x86)\Windows Kits\8.0

E é isso.Eu não sei quando ou como, este problema arosed.O Visual Studio reparação via original installer foi suficiente método para resolver tudo.Todos os projetos compilar sem problemas.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top