链接器outfile属性文件与targetpath不匹配?

Ris*_*shi 15 c++ msbuild linker-errors visual-studio-2010

我正在尝试为名为sierra chart的应用程序编译.DLL.

这是我需要修复的警告所以它都指向链接器输出值:

警告MSB8012:TargetPath(C:\ SierraChart\VCProject\Release\SCStudies.dll)与链接器的OutputFile属性值(c:\ sierrachart\data\SCStudies.dll)不匹配.这可能会导致您的项目错误地构建.要更正此问题,请确保$(OutDir),$(TargetName)和$(TargetExt)属性值与%(Link.OutputFile)中指定的值匹配.C:\ Program Files(x86)\ MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets

有任何想法吗?

Mas*_*gar 9

我相信在将C++项目升级到VS2010时会出现此警告."Visual Studio 2010 C++项目升级指南"介绍了升级过程中遇到的一些注意事项.如果您对更改项目设置感到不舒服,那么保留旧版Visual Studio可能对您有用.

要更改%(Link.OutputFile),请打开项目属性.导航到配置属性 - >链接器 - >常规.您可以将输出文件设置为$(OutDir)\SCStudies.dll,以解决您的问题.您可能需要为要构建的每个Configuration/Flavor重复更改(Debug/x86,Release/x86,Debug/Itanium等...).


Dan*_*elV 6

基于这个答案.

我更改了以下属性:

链接器 - >常规 - >输出文件到"$(OutDir)$(TargetName)$(TargetExt)"

这样可以防止出现警告并成功生成输出.