Dynamically linked shared libraries are identified by two things. The pathname (the name of the library as found for execution), and the compatibility version number. The pathname must match and the compatibility number in the user of the library must be greater than or equal to the library being used. The time stamp is used to record the time a library was built and copied into user so it can be use to determined if the library used at runtime is exactly the same as used to build the program.

Fields

name: u32,

library’s pathname (offset pointing at the end of dylib_command)

timestamp: u32,

library’s build timestamp

current_version: u32,

library’s current version number

compatibility_version: u32,

library’s compatibility version number