---
title: "makeDynamicLibrary(library:)"
framework: metal
role: symbol
role_heading: Instance Method
path: "metal/mtldevice/makedynamiclibrary(library:)"
---

# makeDynamicLibrary(library:)

Creates a Metal dynamic library instance from a Metal library instance.

## Declaration

```swift
func makeDynamicLibrary(library: any MTLLibrary) throws -> any MTLDynamicLibrary
```

## Parameters

- `library`: An doc://com.apple.metal/documentation/Metal/MTLLibrary instance.

## Return Value

Return Value A new MTLDynamicLibrary instance if the method completes successfully; otherwise Swift throws an error and Objective-C returns nil.

## See Also

### Creating dynamic shader libraries

- [supportsDynamicLibraries](metal/mtldevice/supportsdynamiclibraries.md)
- [supportsRenderDynamicLibraries](metal/mtldevice/supportsrenderdynamiclibraries.md)
- [makeDynamicLibrary(url:)](metal/mtldevice/makedynamiclibrary(url:).md)
- [MTLDynamicLibraryError.Code](metal/mtldynamiclibraryerror-swift.struct/code.md)
- [MTLDynamicLibraryDomain](metal/mtldynamiclibrarydomain.md)
