specific-address-in-shared-library
The listed shared libraries contain object code that was compiled without -fPIC. All object code in shared libraries should be recompiled separately from the static libraries with the -fPIC option.
Another common mistake that causes this problem is linking with
gcc -Wl,-shared
instead of gcc -shared
.
In some cases, exceptions to this rule are warranted. If this is such a case, follow the procedure outlined in Policy and then please document the exception by adding a Lintian override to this package.
To check whether a shared library has this problem, run readelf
-d
on the shared library. If a tag of type TEXTREL is present, the
shared library contains non-PIC code.
For more information please consult:
- Libraries (Section 10.2) in the Debian Policy Manual
The tag is present in Lintian version 2.114.163
.
That is the most recent version we know about.
We use semantic versions.
The patch number is a commit step indicator relative to the
2.114.0
release tag in our Git
repository.
You can find the detection logic for this version at commit 3410a22. For merge requests, please use the latest version in the Lintian check libraries/shared/relocation.
Visibility: error
- shlib-with-non-pic-code