I created new Objective-C application project, and Added new target of Endpoint-Security to that project. and Xcode automatically included libEndpointSecurity.tbd to my project. I checked it out, and i found 'install-name' field. I think that is the link to the actual .dylib file stored in my Mac. But i cannot find 'libEndpointSecurity.dylib' in /usr/lib directory.
here is the content of .tbd file.
--- !tapi-tbd
tbd-version: 4
targets: [ x86_64-macos, arm64-macos, arm64e-macos ]
uuids:
- target: x86_64-macos
value: D51DD65F-84EA-3A89-A421-E37A87508A3F
- target: arm64-macos
value: 00000000-0000-0000-0000-000000000000
- target: arm64e-macos
value: B5561C54-DC5C-3A6E-91B9-92079B3E6F05
install-name: '/usr/lib/libEndpointSecurity.dylib'
current-version: 271.100.29
exports:
- targets: [ arm64e-macos, x86_64-macos, arm64-macos ]
symbols: [ _es_authorize_file_provider_materialize, _es_authorize_file_provider_materialize_unsafe,
_es_authorize_file_provider_update, _es_clear_cache, _es_copy_message,
_es_delete_client, _es_exec_arg, _es_exec_arg_count, _es_exec_env,
_es_exec_env_count, _es_exec_fd, _es_exec_fd_count, _es_free_message,
_es_invert_path_match, _es_message_size, _es_mute_path, _es_mute_path_events,
_es_mute_path_literal, _es_mute_path_prefix, _es_mute_process,
_es_mute_process_events, _es_muted_paths_events, _es_muted_processes,
_es_muted_processes_events, _es_new_client, _es_new_client_with_config,
_es_register_early_boot_client, _es_release_message, _es_release_muted_paths,
_es_release_muted_processes, _es_respond_auth_result, _es_respond_flags_result,
_es_retain_message, _es_subscribe, _es_subscriptions, _es_sync_client,
_es_unmute_all_paths, _es_unmute_path, _es_unmute_path_events,
_es_unmute_process, _es_unmute_process_events, _es_unregister_early_boot_client,
_es_unregister_early_boot_clients, _es_unsubscribe, _es_unsubscribe_all,
_sysdiagnoseInformationForEndpointSecurity ]
...
I think it is a problem... but build success with no errors, Application runs properly. Am i misunderstanding the role of 'install-name' field? If so, what's role of it? And why there's no '/usr/lib/libEndpointSecurity.dylib' in my mac?