update_dyld_shared_cache(1) BSD General Commands Manual update_dyld_shared_cache(1)
NAME
update_dyld_shared_cache -- Updates dyld's shared cache
SYNOPSIS
update_dyld_shared_cache [-root directory] [-overlay directory] [-arch arch] [-force] [-debug] [-universal_boot]
DESCRIPTION
update_dyld_shared_cache ensures that dyld's shared cache is up-to-date. This tool is normally only run by Apple's Installer and Software
Update, as they are the only official ways for OS dylibs to be updated. But if for some reason you used another mechanism to alter an OS
dylib, you should manually run update_dyld_shared_cache.
Note that the new cache does not take effect until the OS is rebooted.
The dyld shared cache is mapped by dyld into a process at launch time. Later, when loading any mach-o image, dyld will first check if is in
the share cache, and if it is will use that pre-bound version instead of opening, mapping, and binding the original file. This results in
significant performance improvements to launch time.
update_dyld_shared_cache scans the directory /System/Library/Receipts/ for .bom files which list all files installed. From that info it cre-
ates the set of OS dylibs to build into the dyld cache.
update_dyld_shared_cache builds a separate cache file for each architecture. The cache files and a readable text map of the cached are gen-
erated to /var/db/dyld.
You must be root to run this tool.
The options are as follows:
-root directory
This option specifies the root of an OS installation for which dyld's shared cache should be updated. This is used by the In-
staller to update the dyld shared cache in a partition other than the one you into which you are currently booted. The cache
files are created in the var/db/dyld directory of the specified directory. Note: if you are manually doing this, be sure to run
the update_dyld_shared_cache tool that is in the partition being updated. This assures the cache format created will match that
expected when booting off that partition.
-overlay directory
This option specifies the root of a sparse directory tree. When building the dyld shared cache, any corresponding mach-o files
in the sparse directory will override those in the boot partition. This is used by Software Update to build a dyld shared cache
for the update that is about to be installed. The cache files are created in the var/db/dyld directory of the specified direc-
tory.
-arch arch By default update_dyld_shared_cache generates cache files for all architecture that the current machine can execute. You can
override this behavior by specifying one or more -arch options and list exactly which architectures should have their shared
caches updated.
-force This option will cause update_dyld_shared_cache to regenerated the shared cache files even if they appear to be already up-to-
date.
-debug This option prints out additional information about the work being done.
-universal_boot
This option builds caches for all machines.
SEE ALSO
dyld(1)
Darwin June 1, 2017 Darwin