如何使用VS2010在Windows上静态编译SDL游戏

时间:2012-06-19 06:19:41

标签: visual-studio-2010 compiler-errors sdl static-linking

我从http://www.libsdl.org/下载了最新的SDL HG,并使用VS2010进行了编译。一切正常,但动态链接不方便。 我将项目属性(在SDL HG中)更改为静态编译,但现在在项目中(使用这些库)是很多错误链接器“未解析的外部符号”。 如何正确编译库?

1 个答案:

答案 0 :(得分:2)

如果要在VS2010中静态编译SDL,则必须将配置类型从 dll 更改为 lib ,并在“Librarian”中设置所有依赖项(对于 lib < / em>配置),如“链接器”(用于 dll 配置)。 例如。来自我的SDL_VS2010.vcxproj

<Lib>
  <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Lib>
<Lib>
  <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x86</AdditionalLibraryDirectories>
</Lib>
<Lib>
  <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
  <SubSystem>Windows</SubSystem>
  <TargetMachine>MachineX86</TargetMachine>
</Lib>
<ProjectReference>
  <LinkLibraryDependencies>false</LinkLibraryDependencies>
</ProjectReference>