]>
Commit | Line | Data |
---|---|---|
1 | .Dd June 6, 2006 | |
2 | .Dt rebase 1 | |
3 | .Os Darwin | |
4 | .Sh NAME | |
5 | .Nm rebase | |
6 | .Nd "Changes base address of dylibs and bundles" | |
7 | .Sh SYNOPSIS | |
8 | .Nm | |
9 | .Op Fl low_address Ar addr | |
10 | .Op Fl high_address Ar addr | |
11 | .Op Fl arch Ar arch | |
12 | .Op Fl v | |
13 | .Ar file(s) | |
14 | .Sh DESCRIPTION | |
15 | The base address of an image (dylib or bundle) is the preferred address for it to be loaded. By | |
16 | default all images are built with a base address of zero. At runtime, if the | |
17 | preferred memory range is already occupied, dyld will "slide" the image to a new address range. | |
18 | There is a small cost to the slide, as dyld must do some fix ups. | |
19 | The rebase tool takes a list of images and adjust their base address to be non-overlapping. If no | |
20 | low or high address is specified, the a suitable address range is choosen for the architecture. | |
21 | .Pp | |
22 | The options are as follows: | |
23 | .Bl -tag -width indent | |
24 | .It Fl low_address Ar addr | |
25 | Force the base address for the first image to be | |
26 | .Ar addr | |
27 | (specified in hex). Each subsequent file gets the next available base address. | |
28 | .It Fl high_address Ar addr | |
29 | Force the base address for the last image to be such that when that image is loaded it occupies | |
30 | memory up to | |
31 | .Ar addr | |
32 | (specified in hex). Each preceeding file gets the previous available base address. | |
33 | .It Fl arch Ar arch | |
34 | Only rebase the specified architecture. Other architectures in a universal image are left as is. | |
35 | .It Fl v | |
36 | Verbose. Print information about rebasing done. | |
37 | .El | |
38 | .Sh SEE ALSO | |
39 | .Xr ld 1 |