aboutsummaryrefslogtreecommitdiff
path: root/system/prelink/README
blob: 8eaeeb26ab28d37cc8336b45bbfaff175e03bee5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Prelink is a program that modifies ELF shared libraries and ELF
dynamically linked binaries in such a way that the time needed for
the dynamic linker to perform relocations at start-up significantly
decreases. Due to fewer relocations, the run-time memory consumption
decreases as well (especially the number of unsharable pages). The
prelinking information is only used at start-up time if none of the
dependent libraries have changed since prelinking; otherwise programs
are relocated normally.

This requires libelf which is available from slackbuilds.org.org

There's a script for prelink suitable for a cron job which can be found
at /usr/doc/prelink-$VERSION. Before setting up a cron job, First run
prelink on the system then read script and modify it if you think it's
needed.

WARNING: Non-prelinked binaries may cause SEGFAULT in prelinked
systems using prelinked libraries. If some programs crashes with
SEGFAULT while calling system libraries then run prelink on the
programs in question. The prelink-all script ,which can be found in
/usr/doc/prelink-$VERSION, can be used to prelink all system as a root.
In same place as prelink-all script, there is a prelink-undo script to
undo prelink system wide. Run it as root and it will undo the prelink
system wide.