【发布时间】:2012-06-19 06:19:40
【问题描述】:
我从http://www.libsdl.org/ 下载了最新的 SDL HG 并使用 VS2010 编译它们。一切正常,但动态链接不方便。 我将项目属性(在 SDL HG 中)更改为静态编译,但现在在项目(使用这些库)中有很多错误链接器“未解析的外部符号”。 如何正确编译库?
【问题讨论】:
标签: visual-studio-2010 compiler-errors sdl static-linking
我从http://www.libsdl.org/ 下载了最新的 SDL HG 并使用 VS2010 编译它们。一切正常,但动态链接不方便。 我将项目属性(在 SDL HG 中)更改为静态编译,但现在在项目(使用这些库)中有很多错误链接器“未解析的外部符号”。 如何正确编译库?
【问题讨论】:
标签: visual-studio-2010 compiler-errors sdl static-linking
如果您想在 VS2010 中静态编译 SDL,您必须将配置类型从 dll 更改为 lib 并在“Librarian”中设置所有依赖项(对于 lib 配置)如“链接器”(用于 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>
【讨论】: