---
name: "d-shlibmove"
section: "1"
platform: "linux"
package: "d-shlibs"
version: "0.109"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/d-shlibmove"
---

# d-shlibmove(1)

Move shared library files around in Debian package creation process

## NAME

d-shlibmove - Move shared library files around in Debian package creation process

## SYNOPSIS

**d-shlibmove \[***options***\]** *shared-library.so*

## DESCRIPTION

Call this program in **debian/rules** as a replacement of **dh\_movefiles** for shared library packages.

It also checks debian/control for validity.

## OPTIONS

- **--movedev \[***filename***\] \[***relative dir-path***\]**

  Install file into relative directory path within the **-dev** package. The dir will be created with **install -d** and the file will be moved.

- **--moveshl \[***filename***\] \[***relative dir-path***\]**

  Install file into relative directory path within the shared library runtime package. The dir will be created with **install -d** and the file will be moved.

- **--movedevdoc \[***filename***\]**

  Install file into the documentation directory of **-dev** package. The dir will be created with **install -d** and the file will be moved.

  Added in version 0.4

- **--extralib \[***shared-library.so***\]**

  Install the shared library in the same package as the main shared library.

- **--multiarch**

  By default **d-shlibmove** installs the shared library and any extralibs into /usr/lib. Add this flag to install them into /usr/lib/\<architecture-tripplet\> instead.

  Added in version 0.48

- **--commit**

  By default **d-shlibmove** runs in a dry-run mode. Add this flag to make the moving actually happen.

- **--suffix \[***suffix to add to shared library package***\]**

  Add a suffix to shared library package. This is a workaround when binary interface to package changed, and some fixup to Debian packaging needs to be done.

  Added in version 0.3

- **--devsuffix \[***suffix to add to development package***\]**

  Add a suffix to development package. For making incompatible development package.

- **--shlibs-local \[***current-version***\]**

  Create a debian/shlibs.local file to use, and specify current-version of shared library package. You need to remove debian/shlibs.local, because this only appends to, not overwrite.

  Added in version 0.3

- **--devunversioned**

  Install into unversioned development package.

  Added in version 0.42

- **--ignorelibdep**

  Suppress shlib dependency.  Useful when dynamically resolved e.g. using CDBS.

  Added in version 0.42

- **--c102**

  Add c102 suffix to package names, for C++ ABI transition.

  Added in version 0.8

- **--ldbl**

  Add dbl suffix to package names.

  Added in version 0.35

- **--v5**

  Add v5 suffix to package names.

  Added in version 0.61

- **--t64**

  Add t64 suffix to package names.

  Added in version 0.106

- **--include-a**

  Install the \*.a files. This is the default behavior.

  Added in version 0.51

- **--exclude-a**

  Avoid installing \*.a files.

  Added in version 0.51

- **--include-la**

  Install the \*.la files. This is the default behavior.

  Added in version 0.45

- **--exclude-la**

  Avoid installing \*.la files.

  Added in version 0.45

- **--override \[***override statement***\]**

  Add an overriding sed expression, which looks like *--override s/libshared1-dev/libshared-dev/*. This expression is executed after the other rules.

  Multiple **--override** can be specified.

  Added in version 0.30

## EXIT CODE

Return 1 on error.

Return 2 on dry-run.

Return 0 on success.

## EXAMPLES

The following is a sample command-line of a hypothetical package installation.

**d-shlibmove --commit --movedev "debian/tmp/usr/include/\*" usr/include --extralib debian/tmp/usr/lib/libhomeman-pthread.so debian/tmp/usr/lib/libhomeman.so**

## AUTHOR

Junichi Uekawa \<dancer@debian.org\> \<dancer@netfort.gr.jp\>

## SEE ALSO

d-devlibdeps (*1*)
