0

我应该在同一个解决方案中的 2 个项目中引用同一个静态库。虽然链接一个项目有此参考,但另一个没有。所以我在第二个项目中遇到链接错误。但是,我只能在 .vcxproj 文件中看到差异:

有一行:

<AdditionalOptions>/ERRORREPORT:PROMPT ..\debug\membraneStaticLibr.lib DelayImp.lib %(AdditionalOptions)</AdditionalOptions>

另一个没有这条线。请参阅下面的包围代码。

与 Visual C++ GUI 的项目属性中反映的静态库的区别在哪里?

<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
  <Optimization>Disabled</Optimization>
  <PreprocessorDefinitions>WIN32;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  <MinimalRebuild>false</MinimalRebuild>
  <BasicRuntimeChecks>Default</BasicRuntimeChecks>
  <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
  <RuntimeTypeInfo>true</RuntimeTypeInfo>
  <PrecompiledHeader />
  <WarningLevel>Level3</WarningLevel>
  <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
  <AdditionalOptions>/ERRORREPORT:PROMPT ..\debug\membraneStaticLibr.lib DelayImp.lib %(AdditionalOptions)</AdditionalOptions>
  <GenerateDebugInformation>true</GenerateDebugInformation>
  <SubSystem>Console</SubSystem>
  <TargetMachine>MachineX86</TargetMachine>
  <LinkErrorReporting />
</Link>

4

1 回答 1

2

AdditionalOptions字段可以在Project Properties -> Configuration Properties -> Linker -> Command Line中找到。但是,不能在其中指定依赖项。使用Linker中的Additional Dependencies字段,或者更好的是Common Properties中的项目引用。

于 2013-09-29T18:05:29.607 回答