wxwidget 2.9.4在win7 vs2010终极下构建链接错误

时间:2013-03-11 03:34:49

标签: visual-studio-2010 wxwidgets

我在vs2010 ultimate下批量构建wxwidget并收到错误:

Build started 2013/3/11 10:41:47.
InitializeBuildStatus:
Touching "vc_mswuddll\stc\stc.unsuccessfulbuild".
CustomBuild:
All outputs are up-to-date.
ClCompile:
All outputs are up-to-date.
All outputs are up-to-date.
ResourceCompile:
All outputs are up-to-date.
ManifestResourceCompile:
All outputs are up-to-date.
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(C:\Users\jack\dev\wx\wxWidgets-2.9.4\build\msw\..\..\lib\vc_dll\stc.dll) does not match the Linker's OutputFile property value (C:\Users\jack\dev\wx\wxWidgets-2.9.4\lib\vc_dll\wxmsw294ud_stc_vc_custom.dll). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(992,5): warning MSB8012: TargetName(stc) does not match the Linker's OutputFile property value (wxmsw294ud_stc_vc_custom). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
LINK : fatal error LNK1104: cannot open file 'C:\Users\jack\dev\wx\wxWidgets-2.9.4\lib\vc_lib\wxscintillad.lib'

我使用同一台PC在两个不同的win7系统(使用win7 32bit和win7 64位构建)中尝试了两次,但这个pC有点旧(2007年的mading),但是我在笔记本电脑下尝试(制作在2011年),没有错误。所以我很困惑,我检查了stc项目的配置。笔记本电脑和PC之间的所有值都相同。任何人都可能面临同样的问题或对我的问题有所了解吗?

1 个答案:

答案 0 :(得分:0)

您是否使用Visual Studio提供的解决方案进行构建?

我在wxWidget 2.8.12和visual studio 2008上遇到了很多问题。可能是因为不同项目之间的依赖关系没有在visual studio中设置。在构建wxscintillad之前,您最终会构建一个依赖于wxscintillad的wxWidget库。 wxWidget具有您必须在其网站上手动设置的项目依赖项列表。

另一个解决方案是使用visual studio命令提示符手动构建,在wxWidget的build\msw\目录中执行此操作:

nmake -f makefile.vc MONOLITHIC=0 SHARED=0 USE_EXCEPTIONS=1 USE_RTTI=1 RUNTIME_LIBS=dynamic CPPFLAGS="/Zc:wchar_t- /EHa" BUILD=release DEBUG_INFO=1

调试命令行是:

nmake -f makefile.vc MONOLITHIC=0 SHARED=0 USE_EXCEPTIONS=1 USE_RTTI=1 RUNTIME_LIBS=dynamic CPPFLAGS="/Zc:wchar_t- /EHa" DEBUG_INFO=1

最后,如果你需要清理并从头开始:

  • 删除$ WXWIN \ wx \ build \ msw \
  • 下的所有文件夹(不是文件)
  • 删除$ WXWIN \ wx \ lib \
  • 下的所有文件