WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
NEW
282511
JSCOnly MacOS build failed during linking libmbmalloc.dylib
https://bugs.webkit.org/show_bug.cgi?id=282511
Summary
JSCOnly MacOS build failed during linking libmbmalloc.dylib
blessyoualavie1
Reported
2024-11-03 09:38:37 PST
Building JSCOnly latest version using command `./Tools/Scripts/build-webkit --jsc-only` failed on MacOs 15.1, Xcode 16.1. ``` ./Tools/Scripts/build-webkit --jsc-only --release ... [1364/2622] Linking CXX shared library lib/libmbmalloc.dylib FAILED: lib/libmbmalloc.dylib : && /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -fdiagnostics-color=always -fcolor-diagnostics -Wextra -Wall -Werror=undefined-internal -Werror=undefined-inline -pipe -Wno-noexcept-type -Wno-psabi -Wno-misleading-indentation -Wno-parentheses-equality -Qunused-arguments -Wundef -Wpointer-arith -Wmissing-format-attribute -Wformat-security -Wcast-align -Wno-tautological-compare -fasynchronous-unwind-tables -fno-strict-aliasing -fno-exceptions -fno-rtti -fcoroutines -O3 -DNDEBUG -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.1.sdk -dynamiclib -Wl,-headerpad_max_install_names -o lib/libmbmalloc.dylib -install_name @rpath/libmbmalloc.dylib Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/AllIsoHeaps.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/Allocator.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/AvailableMemory.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/Cache.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/CryptoRandom.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/Deallocator.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/DebugHeap.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/Environment.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/FreeList.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/Gigacage.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/Heap.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/HeapConstants.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/HeapKind.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/IsoHeap.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/IsoHeapImpl.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/IsoMallocFallback.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/IsoPage.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/IsoSharedHeap.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/IsoSharedPage.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/IsoTLS.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/IsoTLSEntry.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/IsoTLSLayout.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/LargeMap.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/Logging.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/Mutex.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/ObjectType.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/ObjectTypeTable.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/PerProcess.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/Scavenger.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/TZoneHeap.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/TZoneHeapManager.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/bmalloc.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/bmalloc_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/bmalloc_heap_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/bmalloc_type.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/hotbit_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/hotbit_heap_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/iso_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/iso_heap_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/iso_test_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/iso_test_heap_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/jit_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/jit_heap_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/minalign32_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/minalign32_heap_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pagesize64k_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pagesize64k_heap_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_alignment.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_all_heaps.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_allocation_callbacks.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_allocation_result.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_all_shared_page_directories.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_baseline_allocator.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_baseline_allocator_table.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_basic_heap_config_enumerator_data.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bitfit_allocator.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bitfit_directory.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bitfit_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bitfit_page.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bitfit_page_config_kind.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bitfit_size_class.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bitfit_view.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bootstrap_free_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bootstrap_heap_page_provider.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_coalign.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_commit_span.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_committed_pages_vector.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_compact_bootstrap_free_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_compact_expendable_memory.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_compact_heap_reservation.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_compact_large_utility_free_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_compute_summary_object_callbacks.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_create_basic_heap_page_caches_with_reserved_memory.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_deallocate.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_debug_spectrum.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_deferred_decommit_log.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_designated_intrinsic_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_dyld_state.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_dynamic_primitive_heap_map.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_ensure_heap_forced_into_reserved_memory.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_ensure_heap_with_page_caches.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_enumerable_page_malloc.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_enumerable_range_list.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_enumerate_bitfit_heaps.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_enumerate_initially_unaccounted_pages.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_enumerate_large_heaps.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_enumerate_segregated_heaps.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_enumerate_unaccounted_pages_as_meta.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_enumerator.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_enumerator_region.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_epoch.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_exclusive_view_template_memo_table.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_expendable_memory.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_extended_gcd.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_fast_large_free_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_fast_megapage_cache.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_fast_megapage_table.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_fd_stream.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_free_granules.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_heap_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_heap_config_kind.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_heap_config_utils.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_heap_for_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_heap_lock.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_heap_ref.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_heap_runtime_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_heap_summary.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_heap_table.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_immortal_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_large_expendable_memory.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_large_free_heap_deferred_commit_log.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_large_free_heap_helpers.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_large_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_large_heap_physical_page_sharing_cache.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_large_map.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_large_sharing_pool.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_large_utility_free_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_lenient_compact_unsigned_ptr.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_local_allocator.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_local_allocator_scavenger_data.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_local_view_cache.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_lock.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_lock_free_read_ptr_ptr_hashtable.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_log.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_malloc_stack_logging.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_medium_megapage_cache.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_megapage_cache.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_monotonic_time.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_page_base.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_page_base_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_page_header_table.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_page_malloc.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_page_sharing_participant.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_page_sharing_pool.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_payload_reservation_page_list.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_physical_memory_transaction.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_primitive_heap_ref.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_probabilistic_guard_malloc_allocator.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_ptr_worklist.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_race_test_hooks.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_random.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_red_black_tree.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_redundant_local_allocator_node.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_report_crash.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_reserved_memory_provider.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_root.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_scavenger.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_directory.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_exclusive_view.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_page.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_page_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_page_config_kind.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_page_config_kind_and_role.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_partial_view.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_shared_handle.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_shared_page_directory.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_shared_view.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_size_directory.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_view.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_shared_page_directory_by_size.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_simple_free_heap_helpers.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_simple_large_free_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_simple_type.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_status_reporter.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_stream.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_string_stream.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_thread_suspend_lock.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_thread_local_cache.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_thread_local_cache_layout.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_thread_local_cache_layout_node.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_thread_local_cache_node.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_utility_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_utility_heap_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_utils.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_versioned_field.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_virtual_range.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/thingy_heap.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/thingy_heap_config.c.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/Zone.cpp.o Source/bmalloc/CMakeFiles/bmalloc.dir/bmalloc/ProcessCheck.mm.o Source/bmalloc/CMakeFiles/mbmalloc.dir/bmalloc/mbmalloc.cpp.o && : Undefined symbols for architecture arm64: "_OBJC_CLASS_$_NSBundle", referenced from: in ProcessCheck.mm.o "_OBJC_CLASS_$_NSProcessInfo", referenced from: in ProcessCheck.mm.o "bmalloc::api::TZoneLog::log(char const*, ...)", referenced from: bmalloc::api::TZoneHeapManager::init() (.cold.1) in TZoneHeapManager.cpp.o "bmalloc::api::TZoneLog::singleton()", referenced from: bmalloc::api::TZoneHeapManager::init() (.cold.1) in TZoneHeapManager.cpp.o "_objc_msgSend", referenced from: in objc-stubs-file ld: symbol(s) not found for architecture arm64 c++: error: linker command failed with exit code 1 (use -v to see invocation) [1377/2622] Building CXX object Tools/TestWebKitAPI/CMakeFiles/TestWTF.dir/TestsController.cpp.o ninja: build stopped: subcommand failed. ```
Attachments
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2024-11-10 09:39:12 PST
<
rdar://problem/139602172
>
ariaszzzhc
Comment 2
2024-12-17 20:54:15 PST
I've met same problem? Any solution to fix this? Or will it be fixed recently?
blessyoualavie1
Comment 3
2024-12-19 09:29:17 PST
Currently, my workaround is using the "JavaScriptCore" scheme with xcodebuild command.
Tim Chevalier
Comment 4
2025-03-07 20:13:49 PST
I ran into the same problem. I did a `git bisect` and the problem seems to have been introduced in this commit:
https://lists.webkit.org/pipermail/webkit-changes/2024-July/304870.html
A partial fix is to edit `Source/bmalloc/CMakeLists.txt` as follows: ``` -- a/Source/bmalloc/CMakeLists.txt +++ b/Source/bmalloc/CMakeLists.txt @@ -722,7 +722,7 @@ WEBKIT_ADD_TARGET_CXX_FLAGS(bmalloc if (DEVELOPER_MODE AND (APPLE OR HAVE_MALLOC_TRIM)) add_library(mbmalloc SHARED bmalloc/mbmalloc.cpp) target_include_directories(mbmalloc PRIVATE ${bmalloc_PRIVATE_INCLUDE_DIRECTORIES}) - target_link_libraries(mbmalloc Threads::Threads bmalloc) + target_link_libraries(mbmalloc Threads::Threads bmalloc "-framework Foundation") set_target_properties(mbmalloc PROPERTIES COMPILE_DEFINITIONS "BUILDING_mbmalloc") WEBKIT_ADD_TARGET_CXX_FLAGS(mbmalloc -Wno-missing-field-initializers) endif () ``` This works to get `libmbmalloc` building, but then the build fails in a later stage (linking `LLIntSettingsExtractor`), complaining about the same undefined symbols.
Elliott Williams
Comment 5
2025-03-10 11:43:16 PDT
Definitely looks like
https://bugs.webkit.org/show_bug.cgi?id=277383
added Foundation and objc code to bmalloc. In the Xcode-based build, we build bmalloc as a static library and link it into JavaScriptCore.framework, so its gets its Foundation and libobjc linkage from JavaScriptCore. So in the CMake build, where we build it as a dylib, we'll need to add the same linkage to targets below JSC. As a workaround, I recommend using `Tools/Scripts/build-jsc` which uses Xcode to build, that's the configuration we actually defend in EWS.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug