Question

Eh bien, voici un bel obscur. J'essaie de compiler la dernière source tycoon de transport ouvert dans Visual Studio 2005. (C'est une application C ++ qui utilise zlib, dx8 et quelques autres bibliothèques assez courantes).

J'ai quelques erreurs d'éditeur de liens à faire avec les dépendances 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  

J'ai téléchargé et compilé le dernier stable freetype (également dans VS2005) et placé les répertoires ft2build.h et freetype dans mon répertoire VS8 / VC / include, ainsi que la bibliothèque libfreetype2.lib ainsi compilée. mon répertoire VS8 / VC / lib. Que pourrais-je manquer?

Merci!

Était-ce utile?

La solution

Le signe @ au début des noms de fonction altérés indique que votre fichier fontcache.obj s'attend à ce que ces fonctions possèdent le __ fastcall . convention d'appel, ce qui est inhabituel dans la mesure où la convention d'appel par défaut est __cdecl . Je soupçonne qu'il y a une discordance quelque part dans les paramètres du compilateur utilisés pour construire les bibliothèques et ceux utilisés pour créer l'application. Voir ici et ici pour plus d'informations.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top