Pergunta

Bem, aqui está uma agradável obscura. Estou tentando compilar o mais recente fonte de tycoon transporte aberto no Visual Studio 2005. (É um aplicativo C ++ que usa zlib, DX8 e algumas outras bibliotecas bastante comuns).

Eu recebo alguns erros vinculador a ver com as dependências FreeType:

Error   1   error LNK2001: unresolved external symbol @FT_Done_Face@4   fontcache.obj   
Error   2   error LNK2001: unresolved external symbol @FT_Load_Char@12  fontcache.obj   
Error   3   error LNK2001: unresolved external symbol @FT_Init_FreeType@4   fontcache.obj   
Error   4   error LNK2001: unresolved external symbol @FT_Select_Charmap@8  fontcache.obj   
Error   5   error LNK2001: unresolved external symbol @FT_Set_Charmap@8 fontcache.obj   
Error   6   error LNK2001: unresolved external symbol @FT_New_Face@16   fontcache.obj   
Error   7   error LNK2001: unresolved external symbol @FT_Render_Glyph@8    fontcache.obj   
Error   8   error LNK2001: unresolved external symbol @FT_Set_Pixel_Sizes@12    fontcache.obj   
Error   9   fatal error LNK1120: 8 unresolved externals ..\objs\Win32\Release\\openttd.exe  

Eu fiz o download do estábulo freetype mais recente e compilou (também em VS2005), e colocar o ft2build.h e freetype incluir diretórios em meu VS8 / VC / include, e colocar a biblioteca libfreetype2.lib assim compilados em meu diretório VS8 / VC / lib. O que eu poderia estar faltando?

Obrigado!

Foi útil?

Solução

O sinal @ no início dos nomes de função mutilados mostrar que seu arquivo fontcache.obj está esperando estas funções para ter a convenção __fastcall chamando, que é incomum como o padrão convenção de chamada é __cdecl. Eu suspeito que há um algum lugar incompatibilidade nas configurações do compilador utilizadas para construir as bibliotecas e aqueles usados ??para criar o aplicativo. Consulte aqui e aqui para obter mais informações.

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