# Interface CppSharedLibrary

All Superinterfaces:
  `BuildableComponent, ComponentWithCoordinates, ComponentWithDependencies, ComponentWithLinkFile, ComponentWithLinkUsage, ComponentWithNativeRuntime, ComponentWithObjectFiles, ComponentWithOutputs, ComponentWithRuntimeFile, ComponentWithRuntimeUsage, ComponentWithSharedLibrary, CppBinary, Named, PublishableComponent, SoftwareComponent`

public interface CppSharedLibrary extends CppBinary, ComponentWithSharedLibrary, ComponentWithLinkUsage, ComponentWithRuntimeUsage, ComponentWithOutputs, PublishableComponent
A shared library built from C++ source.

Since:
  4.2

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from interface Named

  `Named.Namer`

- ## Field Summary

  ### Fields inherited from interface CppBinary

  `DEBUGGABLE_ATTRIBUTE, LINKAGE_ATTRIBUTE, OPTIMIZED_ATTRIBUTE`

- ## Method Summary

  ### Methods inherited from interface ComponentWithCoordinates

  `getCoordinates`

  ### Methods inherited from interface ComponentWithDependencies

  `getDependencies`

  ### Methods inherited from interface ComponentWithLinkFile

  `getLinkFile, getLinkFileProducer`

  ### Methods inherited from interface ComponentWithLinkUsage

  `getLinkElements`

  ### Methods inherited from interface ComponentWithNativeRuntime

  `getBaseName, getTargetMachine, getToolChain, isDebuggable, isOptimized`

  ### Methods inherited from interface ComponentWithObjectFiles

  `getObjects`

  ### Methods inherited from interface ComponentWithOutputs

  `getOutputs`

  ### Methods inherited from interface ComponentWithRuntimeFile

  `getRuntimeFile`

  ### Methods inherited from interface ComponentWithRuntimeUsage

  `getRuntimeElements`

  ### Methods inherited from interface ComponentWithSharedLibrary

  `getLinkLibraries, getLinkTask`

  ### Methods inherited from interface CppBinary

  `getCompileIncludePath, getCompileTask, getCppSource, getLinkLibraries, getRuntimeLibraries, getTargetPlatform`

  ### Methods inherited from interface Named

  `getName`