Xcode 7 Dalam Target> BuildPhases> Link Binary With Libraries> tekan tombol +
Saat memilih kerangka kerja untuk ditambahkan, Anda tidak dapat menemukan * .dylib, Anda akan melihat * .tbd sebagai gantinya.
Apa alasannya ini?
** Untuk orang yang membutuhkan dylib, ikuti dari postingan ini
- Pilih "Tambahkan lainnya"
- Setelah berada di jendela pemilihan file, lakukan "CMD" + Shift + G (Buka folder) & ketik / usr / lib /
- Dari / user / lib Anda dapat menemukan file * .dylib
Jawaban:
Saya telah menjelajahi Google tetapi satu-satunya hal yang dapat saya temukan sejauh ini adalah kutipan berikut dari forum pengembang Apple :
Semoga lebih banyak dokumentasi akan segera hadir.
Memperbarui
Sebagai contoh, berikut adalah seluruh konten libsqlite3.tbd . Ini hanya file teks. Perhatikan bahwa nama-instal adalah libsqlite3.dylib .
--- archs: [ armv7, armv7s, arm64 ] platform: ios install-name: /usr/lib/libsqlite3.dylib current-version: 216.4 compatibility-version: 9.0 exports: - archs: [ armv7, armv7s, arm64 ] symbols: [ __sqlite3_lockstate, __sqlite3_purgeEligiblePagerCacheMemory, __sqlite3_system_busy_handler, __sqlite_auto_profile, __sqlite_auto_profile_syslog, __sqlite_auto_trace, __sqlite_auto_trace_syslog, _sqlite3OsShmHasMultipleLinks, _sqlite3OsShmRenamedWhileOpen, _sqlite3OsShmWasTruncated, _sqlite3OsShmWasUnlinkedWhileOpen, _sqlite3VersionNumber, _sqlite3VersionString, _sqlite3_aggregate_context, _sqlite3_aggregate_count, _sqlite3_auto_extension, _sqlite3_backup_finish, _sqlite3_backup_init, _sqlite3_backup_pagecount, _sqlite3_backup_remaining, _sqlite3_backup_step, _sqlite3_bind_blob, _sqlite3_bind_blob64, _sqlite3_bind_double, _sqlite3_bind_int, _sqlite3_bind_int64, _sqlite3_bind_null, _sqlite3_bind_parameter_count, _sqlite3_bind_parameter_index, _sqlite3_bind_parameter_name, _sqlite3_bind_text, _sqlite3_bind_text16, _sqlite3_bind_text64, _sqlite3_bind_value, _sqlite3_bind_zeroblob, _sqlite3_blob_bytes, _sqlite3_blob_close, _sqlite3_blob_open, _sqlite3_blob_read, _sqlite3_blob_reopen, _sqlite3_blob_write, _sqlite3_busy_handler, _sqlite3_busy_timeout, _sqlite3_cancel_auto_extension, _sqlite3_changes, _sqlite3_clear_bindings, _sqlite3_close, _sqlite3_close_v2, _sqlite3_collation_needed, _sqlite3_collation_needed16, _sqlite3_column_blob, _sqlite3_column_bytes, _sqlite3_column_bytes16, _sqlite3_column_count, _sqlite3_column_decltype, _sqlite3_column_decltype16, _sqlite3_column_double, _sqlite3_column_int, _sqlite3_column_int64, _sqlite3_column_name, _sqlite3_column_name16, _sqlite3_column_text, _sqlite3_column_text16, _sqlite3_column_type, _sqlite3_column_value, _sqlite3_commit_hook, _sqlite3_compileoption_get, _sqlite3_compileoption_used, _sqlite3_complete, _sqlite3_complete16, _sqlite3_config, _sqlite3_context_db_handle, _sqlite3_create_collation, _sqlite3_create_collation16, _sqlite3_create_collation_v2, _sqlite3_create_function, _sqlite3_create_function16, _sqlite3_create_function_v2, _sqlite3_create_module, _sqlite3_create_module_v2, _sqlite3_data_count, _sqlite3_data_directory, _sqlite3_db_config, _sqlite3_db_filename, _sqlite3_db_handle, _sqlite3_db_mutex, _sqlite3_db_readonly, _sqlite3_db_release_memory, _sqlite3_db_status, _sqlite3_declare_vtab, _sqlite3_enable_shared_cache, _sqlite3_errcode, _sqlite3_errmsg, _sqlite3_errmsg16, _sqlite3_errstr, _sqlite3_exec, _sqlite3_expired, _sqlite3_extended_errcode, _sqlite3_extended_result_codes, _sqlite3_file_control, _sqlite3_finalize, _sqlite3_free, _sqlite3_free_table, _sqlite3_get_autocommit, _sqlite3_get_auxdata, _sqlite3_get_table, _sqlite3_global_recover, _sqlite3_initialize, _sqlite3_intarray_bind, _sqlite3_intarray_create, _sqlite3_interrupt, _sqlite3_last_insert_rowid, _sqlite3_libversion, _sqlite3_libversion_number, _sqlite3_limit, _sqlite3_log, _sqlite3_malloc, _sqlite3_malloc64, _sqlite3_memory_alarm, _sqlite3_memory_highwater, _sqlite3_memory_used, _sqlite3_mprintf, _sqlite3_msize, _sqlite3_mutex_alloc, _sqlite3_mutex_enter, _sqlite3_mutex_free, _sqlite3_mutex_leave, _sqlite3_mutex_try, _sqlite3_next_stmt, _sqlite3_open, _sqlite3_open16, _sqlite3_open_v2, _sqlite3_os_end, _sqlite3_os_init, _sqlite3_overload_function, _sqlite3_prepare, _sqlite3_prepare16, _sqlite3_prepare16_v2, _sqlite3_prepare_v2, _sqlite3_profile, _sqlite3_progress_handler, _sqlite3_randomness, _sqlite3_realloc, _sqlite3_realloc64, _sqlite3_release_memory, _sqlite3_reset, _sqlite3_reset_auto_extension, _sqlite3_result_blob, _sqlite3_result_blob64, _sqlite3_result_double, _sqlite3_result_error, _sqlite3_result_error16, _sqlite3_result_error_code, _sqlite3_result_error_nomem, _sqlite3_result_error_toobig, _sqlite3_result_int, _sqlite3_result_int64, _sqlite3_result_null, _sqlite3_result_text, _sqlite3_result_text16, _sqlite3_result_text16be, _sqlite3_result_text16le, _sqlite3_result_text64, _sqlite3_result_value, _sqlite3_result_zeroblob, _sqlite3_rollback_hook, _sqlite3_rtree_geometry_callback, _sqlite3_rtree_query_callback, _sqlite3_set_authorizer, _sqlite3_set_auxdata, _sqlite3_shutdown, _sqlite3_sleep, _sqlite3_snprintf, _sqlite3_soft_heap_limit, _sqlite3_soft_heap_limit64, _sqlite3_sourceid, _sqlite3_sql, _sqlite3_status, _sqlite3_status64, _sqlite3_step, _sqlite3_stmt_busy, _sqlite3_stmt_readonly, _sqlite3_stmt_status, _sqlite3_strglob, _sqlite3_stricmp, _sqlite3_strnicmp, _sqlite3_table_column_metadata, _sqlite3_temp_directory, _sqlite3_test_control, _sqlite3_thread_cleanup, _sqlite3_threadsafe, _sqlite3_total_changes, _sqlite3_trace, _sqlite3_transfer_bindings, _sqlite3_update_hook, _sqlite3_uri_boolean, _sqlite3_uri_int64, _sqlite3_uri_parameter, _sqlite3_user_data, _sqlite3_value_blob, _sqlite3_value_bytes, _sqlite3_value_bytes16, _sqlite3_value_double, _sqlite3_value_int, _sqlite3_value_int64, _sqlite3_value_numeric_type, _sqlite3_value_text, _sqlite3_value_text16, _sqlite3_value_text16be, _sqlite3_value_text16le, _sqlite3_value_type, _sqlite3_version, _sqlite3_vfs_find, _sqlite3_vfs_register, _sqlite3_vfs_unregister, _sqlite3_vmprintf, _sqlite3_vsnprintf, _sqlite3_vtab_config, _sqlite3_vtab_on_conflict, _sqlite3_wal_autocheckpoint, _sqlite3_wal_checkpoint, _sqlite3_wal_checkpoint_v2, _sqlite3_wal_hook ] ...
Saya menemukan ini dan file .tbd lainnya di
Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib/
Anda juga bisa melihat file .tbd jika Anda pergi ke tab umum proyek Xcode Anda dan kemudian menambahkan pustaka di bawah kerangka kerja dan pustaka tertaut. File .tbd akan disalin ke proyek Anda.
Jadi, tampaknya file .dylib adalah pustaka kode biner sebenarnya yang digunakan proyek Anda dan terletak di direktori / usr / lib / pada perangkat pengguna. File .tbd, di sisi lain, hanyalah file teks yang disertakan dalam proyek Anda dan berfungsi sebagai link ke biner .dylib yang diperlukan. Karena file teks ini jauh lebih kecil daripada pustaka biner, itu membuat ukuran unduhan SDK lebih kecil.
Pada titik ini saya hanya menduga dari informasi yang diberikan, jadi mohon koreksi saya jika saya salah.
sumber
.dylib adalah biner terkompilasi yang berisi kode mesin. .tbd adalah file teks yang lebih kecil, mirip dengan peta modul lintas platform.
sumber
.tbd
-Text Based dylib stubs
. Ini adalah jenis pengoptimalan yang berarti Anda tidak perlu menyalin.dylib
file (yang ada pada target) ke dalam bundel Anda (misalnya aplikasi). File ini tidak mengandung kode biner yang berdampak besar pada ukuran file.Ini hanya berlaku untuk:
Dynamic libraries
karena mereka terhubung dengan runtimestandard system libraries
.Untuk pengembangan iOS Anda dapat menemukan file .tbd yang dapat Anda gunakan di sini
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib
Misalnya
libiconv.tbd
terlihat sepertiFile ini berisi beberapa informasi meta seperti:
.dylib
lokasisumber