Skip to content
This repository was archived by the owner on Apr 6, 2023. It is now read-only.
This repository was archived by the owner on Apr 6, 2023. It is now read-only.

package with static libraries still has linkage dynamic? Help? #117

@AnEnglishmanInNorway

Description

@AnEnglishmanInNorway

I really hate to pester the community with this, because I'm sure it is me that is not understanding how to use the tool, rather than a problem. I have created a package which contains only header files and one static library. When I use the package, it finds the header files perfectly, but does not find the libraries. The libraries are specified like this:

    [x86,debug,static] lib: { lib\KM.Numerical.Csd.lib };
    [x86,release,static] lib: { lib\KM.Numerical.Cs.lib };

When I look at the generated .targets file it contains things like this

  <ItemDefinitionGroup Label="Win32 and static and Debug" Condition="'$(Platform.ToLower())' == 'win32' And '$(Linkage-KM_Numerical_C.ToLower())' == 'static' And ( $(Configuration.ToLower().IndexOf('debug')) &gt; -1 )">
    <Link>
      <AdditionalDependencies>$(MSBuildThisFileDirectory)../..//build/native/lib/Win32\static\Debug\KM.Numerical.Csd.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
  </ItemDefinitionGroup>

which looks vaguely ok to me, except that I can find no place where $(Linkage-KM_Numerical_C) is set to "static". It has a default dynamic, set in the .targets file, like this:

Linkage-KM_Numerical_C Condition="'$(Linkage-KM_Numerical_C)' == ''">dynamic</Linkage-KM_Numerical_C>

but no other setting that I can see. Where/how do I make sure that this Linkage variable is set to static?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions