Итак, возможно, есть лучший способ, чем этот (и это полностью непроверенный код, записанный в текстовое поле), но я думаю, что это поможет:
uint32_t imageCount = _dyld_image_count();
char **names = calloc(sizeof(char *), imageCount);
int32_t *versions = calloc(sizeof(int32_t), imageCount);
for (uint32_t idx = 0; idx < imageCount; idx++) {
names[idx] = _dyld_get_image_name(idx);
versions[idx] = NSVersionOfLinkTimeLibrary(names[idx]);
}
Если яЯ правильно понимаю dyld.h, это должно дать вам список всех загруженных в данный момент изображений машин и их link-time версий.Любой образ mach-o с версией -1 для времени компоновки не был связан с основным исполняемым файлом.