Skip to content

Conversation

@nikolaszimmermann
Copy link
Member

No description provided.

@nikolaszimmermann
Copy link
Member Author

Still waiting for local test

@nikolaszimmermann nikolaszimmermann force-pushed the nzimmermann/add_swift_toolchain branch from a4f1eea to 14fdceb Compare October 29, 2025 21:53
@nikolaszimmermann
Copy link
Member Author

-- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "3.0.13")  
-- Found Gperf: /usr/bin/gperf (Required is at least version "3.0.1") 
-- The Swift compiler identification is Apple 6.2
-- Check for working Swift compiler: /opt/swift/bin/swiftc
-- Check for working Swift compiler: /opt/swift/bin/swiftc - works
-- Platform-specific CMakeLists not found: /host/home/nzimmermann/Software/GitRepositories/WebKit/Source/bmalloc/PlatformWPE.cmake
-- Performing Test CXX_COMPILER_SUPPORTS_-Wno-missing-field-initializers
-- Performing Test CXX_COMPILER_SUPPORTS_-Wno-missing-field-initializers - Success

This is now using clang-17, shipped with the Swift SDK.

Waiting :-)

@nikolaszimmermann
Copy link
Member Author

More work todo for WPE:

 -Xlinker -soname -Xlinker libWPEWebKit-2.0.so.1   && :
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'BUILDING_WEBKIT=1')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'BUILDING_WITH_CMAKE=1')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'BUILDING_WPE__=1')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'BWRAP_EXECUTABLE="/usr/bin/bwrap"')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'DATADIR="/usr/local/share"')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'DBUS_PROXY_EXECUTABLE="/usr/bin/xdg-dbus-proxy"')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'GETTEXT_PACKAGE="WPE"')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'HAVE_CONFIG_H=1')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'LIBDIR="/usr/local/lib"')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'LOCALEDIR="/usr/local/share/locale"')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'PAS_BMALLOC=1')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'PKGLIBDIR="/usr/local/lib/wpe-webkit-2.0"')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'PKGLIBEXECDIR="/usr/local/libexec/wpe-webkit-2.0"')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'SK_ASSUME_GL=0')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'SK_ASSUME_GL_ES=1')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'SK_ASSUME_WEBGL=0')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'SK_R32_SHIFT=16')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'SK_TRIVIAL_ABI=[[clang::trivial_abi]]')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than '_GLIBCXX_ASSERTIONS=1')
warning: conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'WPE_ENABLE_XKB=1')
<unknown>:0: warning: unknown warning group: '-I/usr/include' [#UnknownWarningGroup]
<unknown>:0: warning: unknown warning group: '-I/usr/include' [#UnknownWarningGroup]

[#UnknownWarningGroup]: <https://docs.swift.org/compiler/documentation/diagnostics/unknown-warning-group>
error: link command failed with exit code 1 (use -v to see invocation)
../../../Source/WebKit/Shared/Extensions/wpe/WebExtensionUtilitiesWPE.cpp:46: error: undefined reference to 'wpe_toplevel_list'
../../../Source/WebKit/Shared/Extensions/wpe/WebExtensionUtilitiesWPE.cpp:48: error: undefined reference to 'wpe_toplevel_get_screen'
../../../Source/WebKit/Shared/Extensions/wpe/WebExtensionUtilitiesWPE.cpp:49: error: undefined reference to 'wpe_screen_get_scale'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:130: error: undefined reference to 'wpe_event_get_modifiers'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:123: error: undefined reference to 'wpe_event_get_position'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:137: error: undefined reference to 'wpe_event_get_event_type'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:91: error: undefined reference to 'wpe_event_pointer_move_get_delta'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:140: error: undefined reference to 'wpe_event_pointer_button_get_button'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:141: error: undefined reference to 'wpe_event_pointer_button_get_press_count'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:145: error: undefined reference to 'wpe_event_pointer_button_get_button'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:42: error: undefined reference to 'wpe_event_get_time'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:171: error: undefined reference to 'wpe_event_scroll_is_stop'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:178: error: undefined reference to 'wpe_event_scroll_get_deltas'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:179: error: undefined reference to 'wpe_event_scroll_has_precise_deltas'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:123: error: undefined reference to 'wpe_event_get_position'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:187: error: undefined reference to 'wpe_event_get_input_source'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:205: error: undefined reference to 'wpe_event_get_view'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:206: error: undefined reference to 'wpe_view_get_width'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:207: error: undefined reference to 'wpe_view_get_height'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:211: error: undefined reference to 'wpe_event_get_modifiers'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:42: error: undefined reference to 'wpe_event_get_time'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:217: error: undefined reference to 'wpe_event_get_event_type'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:218: error: undefined reference to 'wpe_event_keyboard_get_keyval'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:219: error: undefined reference to 'wpe_event_keyboard_get_keycode'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:220: error: undefined reference to 'wpe_event_get_modifiers'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:42: error: undefined reference to 'wpe_event_get_time'
../../../Source/WebKit/Shared/wpe/WebKeyboardEventWPE.cpp:1321: error: undefined reference to 'wpe_keyval_to_unicode'
../../../Source/WebKit/Shared/wpe/WebKeyboardEventWPE.cpp:433: error: undefined reference to 'wpe_keyval_to_unicode'
../../../Source/WebKit/Shared/wpe/WebKeyboardEventWPE.cpp:887: error: undefined reference to 'wpe_keyval_to_unicode'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:234: error: undefined reference to 'wpe_event_get_event_type'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:251: error: undefined reference to 'wpe_event_get_modifiers'
../../../Source/WebKit/Shared/wpe/WebEventFactoryWPE.cpp:42: error: undefined reference to 'wpe_event_get_time'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp:198: error: undefined reference to 'wpe_display_get_primary'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp:198: error: undefined reference to 'wpe_display_get_drm_device'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp:639: error: undefined reference to 'wpe_display_get_primary'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp:639: error: undefined reference to 'wpe_display_get_drm_device'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp:640: error: undefined reference to 'wpe_drm_device_get_render_node'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp:642: error: undefined reference to 'wpe_drm_device_get_primary_node'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp:1297: error: undefined reference to 'wpe_display_get_type'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp:0: error: undefined reference to 'wpe_display_get_default'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/InputMethodFilterWPE.cpp:44: error: undefined reference to 'wpe_event_get_event_type'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp:242: error: undefined reference to 'wpe_view_get_gesture_controller'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp:243: error: undefined reference to 'wpe_gesture_controller_cancel'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp:506: error: undefined reference to 'wpe_view_get_display'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp:506: error: undefined reference to 'wpe_display_get_clipboard'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/PageClientImpl.cpp:507: error: undefined reference to 'wpe_clipboard_read_bytes'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:62: error: undefined reference to 'wpe_view_new'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:68: error: undefined reference to 'wpe_view_get_width'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:69: error: undefined reference to 'wpe_view_get_height'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:71: error: undefined reference to 'wpe_view_get_mapped'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:73: error: undefined reference to 'wpe_view_get_has_focus'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:77: error: undefined reference to 'wpe_view_get_toplevel'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:79: error: undefined reference to 'wpe_toplevel_get_state'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:83: error: undefined reference to 'wpe_view_get_screen'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:84: error: undefined reference to 'wpe_screen_get_id'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:135: error: undefined reference to 'wpe_view_get_scale'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:171: error: undefined reference to 'wpe_view_get_toplevel'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:161: error: undefined reference to 'wpe_toplevel_get_state'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:180: error: undefined reference to 'wpe_toplevel_fullscreen'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:197: error: undefined reference to 'wpe_view_get_toplevel'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:161: error: undefined reference to 'wpe_toplevel_get_state'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:204: error: undefined reference to 'wpe_toplevel_unfullscreen'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:226: error: undefined reference to 'wpe_toplevel_list'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:229: error: undefined reference to 'wpe_toplevel_get_state'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:233: error: undefined reference to 'wpe_toplevel_foreach_view'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:358: error: undefined reference to 'wpe_event_get_position'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:334: error: undefined reference to 'wpe_event_touch_get_sequence_id'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:415: error: undefined reference to 'wpe_event_touch_get_sequence_id'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:417: error: undefined reference to 'wpe_event_touch_get_sequence_id'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:425: error: undefined reference to 'wpe_event_touch_get_sequence_id'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:387: error: undefined reference to 'wpe_event_keyboard_get_keyval'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:395: error: undefined reference to 'wpe_event_keyboard_get_keycode'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:374: error: undefined reference to 'wpe_view_focus_in'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:436: error: undefined reference to 'wpe_view_get_gesture_controller'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:440: error: undefined reference to 'wpe_gesture_controller_handle_event'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:445: error: undefined reference to 'wpe_gesture_controller_get_gesture'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:451: error: undefined reference to 'wpe_gesture_controller_get_gesture_position'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:454: error: undefined reference to 'wpe_event_pointer_move_new'
../../../Source/WebKit/WPEPlatform/wpe/GRefPtrWPE.h:35: error: undefined reference to 'wpe_event_unref'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:462: error: undefined reference to 'wpe_event_pointer_button_new'
../../../Source/WebKit/WPEPlatform/wpe/GRefPtrWPE.h:35: error: undefined reference to 'wpe_event_unref'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:468: error: undefined reference to 'wpe_view_focus_in'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:472: error: undefined reference to 'wpe_event_pointer_button_new'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:480: error: undefined reference to 'wpe_gesture_controller_get_gesture_position'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:480: error: undefined reference to 'wpe_gesture_controller_get_gesture_delta'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:481: error: undefined reference to 'wpe_event_scroll_new'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:484: error: undefined reference to 'wpe_gesture_controller_is_drag_begin'
../../../Source/WebKit/WPEPlatform/wpe/GRefPtrWPE.h:35: error: undefined reference to 'wpe_event_unref'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:593: error: undefined reference to 'wpe_view_set_cursor_from_name'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:593: error: undefined reference to 'wpe_view_set_cursor_from_name'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:593: error: undefined reference to 'wpe_view_set_cursor_from_name'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:593: error: undefined reference to 'wpe_view_set_cursor_from_name'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:88: error: undefined reference to 'wpe_view_get_mapped'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:92: error: undefined reference to 'wpe_view_get_width'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:92: error: undefined reference to 'wpe_view_get_height'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:96: error: undefined reference to 'wpe_view_get_scale'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:262: error: undefined reference to 'wpe_view_get_screen'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:266: error: undefined reference to 'wpe_screen_get_id'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:104: error: undefined reference to 'wpe_view_get_toplevel'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:108: error: undefined reference to 'wpe_view_get_has_focus'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:123: error: undefined reference to 'wpe_view_get_toplevel_state'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:234: error: undefined reference to 'wpe_view_get_visible'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:234: error: undefined reference to 'wpe_view_get_has_focus'
../../../Source/WebKit/WPEPlatform/wpe/GRefPtrWPE.h:35: error: undefined reference to 'wpe_event_ref'
../../../Source/WebKit/WPEPlatform/wpe/GRefPtrWPE.h:35: error: undefined reference to 'wpe_event_unref'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WPEWebViewPlatform.cpp:630: error: undefined reference to 'wpe_view_set_cursor_from_bytes'
../../../Source/WebKit/WPEPlatform/wpe/GRefPtrWPE.h:35: error: undefined reference to 'wpe_event_ref'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:198: error: undefined reference to 'wpe_input_method_context_new'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:78: error: undefined reference to 'wpe_input_method_context_set_input_purpose'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:83: error: undefined reference to 'wpe_input_method_context_set_input_hints'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:116: error: undefined reference to 'wpe_input_method_context_get_preedit_string'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:124: error: undefined reference to 'wpe_input_method_underline_get_color'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:126: error: undefined reference to 'wpe_input_method_underline_get_start_offset'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:127: error: undefined reference to 'wpe_input_method_underline_get_end_offset'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:133: error: undefined reference to 'wpe_input_method_underline_free'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:145: error: undefined reference to 'wpe_input_method_context_filter_key_event'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:151: error: undefined reference to 'wpe_input_method_context_focus_in'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:157: error: undefined reference to 'wpe_input_method_context_focus_out'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:163: error: undefined reference to 'wpe_input_method_context_set_cursor_area'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:169: error: undefined reference to 'wpe_input_method_context_set_surrounding'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitInputMethodContextImplWPE.cpp:175: error: undefined reference to 'wpe_input_method_context_reset'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitWebViewWPE.cpp:239: error: undefined reference to 'wpe_view_get_width'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitWebViewWPE.cpp:239: error: undefined reference to 'wpe_view_get_height'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/API/wpe/WebKitWebViewWPE.cpp:0: error: undefined reference to 'wpe_view_set_opaque_rectangles'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:139: error: undefined reference to 'wpe_event_pointer_move_new'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:131: error: undefined reference to 'wpe_event_pointer_button_new'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:0: error: undefined reference to 'wpe_view_event'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:131: error: undefined reference to 'wpe_event_pointer_button_new'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:133: error: undefined reference to 'wpe_view_event'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:130: error: undefined reference to 'wpe_view_compute_press_count'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:133: error: undefined reference to 'wpe_view_event'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:434: error: undefined reference to 'wpe_unicode_to_keyval'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:223: error: undefined reference to 'wpe_view_get_display'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:225: error: undefined reference to 'wpe_display_get_keymap'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:229: error: undefined reference to 'wpe_keymap_get_entries_for_keyval'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:236: error: undefined reference to 'wpe_keymap_translate_keyboard_state'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:243: error: undefined reference to 'wpe_event_keyboard_new'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:245: error: undefined reference to 'wpe_view_event'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:248: error: undefined reference to 'wpe_event_keyboard_new'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:462: error: undefined reference to 'wpe_unicode_to_keyval'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:479: error: undefined reference to 'wpe_event_scroll_new'
../../../Source/WebKit/UIProcess/Automation/libwpe/WebAutomationSessionWPE.cpp:0: error: undefined reference to 'wpe_event_touch_new'
../../../Source/WebKit/UIProcess/Gamepad/wpe/GamepadProviderWPE.cpp:169: error: undefined reference to 'wpe_gamepad_stop_input_monitor'
../../../Source/WebKit/UIProcess/Gamepad/wpe/GamepadProviderWPE.cpp:159: error: undefined reference to 'wpe_gamepad_start_input_monitor'
../../../Source/WebKit/UIProcess/Gamepad/wpe/GamepadProviderWPE.cpp:69: error: undefined reference to 'wpe_gamepad_start_input_monitor'
../../../Source/WebKit/UIProcess/Gamepad/wpe/GamepadProviderWPE.cpp:102: error: undefined reference to 'wpe_display_get_primary'
../../../Source/WebKit/UIProcess/Gamepad/wpe/GamepadProviderWPE.cpp:102: error: undefined reference to 'wpe_display_create_gamepad_manager'
../../../Source/WebKit/UIProcess/Gamepad/wpe/PlatformGamepadWPE.cpp:43: error: undefined reference to 'wpe_gamepad_get_name'
../../../Source/WebKit/UIProcess/Gamepad/wpe/GamepadProviderWPE.cpp:115: error: undefined reference to 'wpe_gamepad_manager_list_devices'
../../../Source/WebKit/UIProcess/Inspector/wpe/WebInspectorUIProxyWPE.cpp:137: error: undefined reference to 'wpe_view_get_display'
../../../Source/WebKit/UIProcess/Inspector/wpe/WebInspectorUIProxyWPE.cpp:147: error: undefined reference to 'wpe_view_set_toplevel'
../../../Source/WebKit/UIProcess/Inspector/wpe/WebInspectorUIProxyWPE.cpp:148: error: undefined reference to 'wpe_toplevel_resize'
../../../Source/WebKit/UIProcess/Inspector/wpe/WebInspectorUIProxyWPE.cpp:155: error: undefined reference to 'wpe_toplevel_resize'
../../../Source/WebKit/UIProcess/Inspector/wpe/WebInspectorUIProxyWPE.cpp:156: error: undefined reference to 'wpe_view_set_toplevel'
../../../Source/WebKit/UIProcess/Inspector/wpe/WebInspectorUIProxyWPE.cpp:220: error: undefined reference to 'wpe_toplevel_set_title'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/glib/DRMMainDevice.cpp:197: error: undefined reference to 'wpe_display_get_primary'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/glib/DRMMainDevice.cpp:197: error: undefined reference to 'wpe_display_get_drm_device'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/glib/DRMMainDevice.cpp:198: error: undefined reference to 'wpe_drm_device_get_primary_node'
./WebKitBuild/WPE/Release/../../../Source/WebKit/UIProcess/glib/DRMMainDevice.cpp:199: error: undefined reference to 'wpe_drm_device_get_render_node'
../../../Source/WebKit/UIProcess/glib/WebProcessPoolGLib.cpp:118: error: undefined reference to 'wpe_display_get_available_input_devices'
../../../Source/WebKit/UIProcess/glib/WebProcessPoolGLib.cpp:186: error: undefined reference to 'wpe_display_get_available_input_devices'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:122: error: undefined reference to 'wpe_view_get_display'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:122: error: undefined reference to 'wpe_buffer_dma_buf_new'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:141: error: undefined reference to 'wpe_buffer_shm_new'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:163: error: undefined reference to 'wpe_display_use_explicit_sync'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:164: error: undefined reference to 'wpe_buffer_set_rendering_fence'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:250: error: undefined reference to 'wpe_view_render_buffer'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:194: error: undefined reference to 'wpe_buffer_import_to_pixels'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:173: error: undefined reference to 'wpe_buffer_get_width'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:174: error: undefined reference to 'wpe_buffer_get_height'
../../../Source/WebKit/WPEPlatform/wpe/WPEBufferDMABuf.h:40: error: undefined reference to 'wpe_buffer_dma_buf_get_type'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:179: error: undefined reference to 'wpe_buffer_dma_buf_get_format'
../../../Source/WebKit/WPEPlatform/wpe/WPEBufferSHM.h:40: error: undefined reference to 'wpe_buffer_shm_get_type'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:273: error: undefined reference to 'wpe_buffer_take_release_fence'
../../../Source/WebKit/WPEPlatform/wpe/WPEBufferDMABuf.h:40: error: undefined reference to 'wpe_buffer_dma_buf_get_type'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:290: error: undefined reference to 'wpe_buffer_dma_buf_get_format'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:291: error: undefined reference to 'wpe_buffer_dma_buf_get_modifier'
../../../Source/WebKit/WPEPlatform/wpe/WPEBufferSHM.h:40: error: undefined reference to 'wpe_buffer_shm_get_type'
../../../Source/WebKit/UIProcess/wpe/AcceleratedBackingStore.cpp:295: error: undefined reference to 'wpe_buffer_shm_get_format'
../../../Source/WebKit/UIProcess/wpe/DisplayVBlankMonitorWPE.cpp:44: error: undefined reference to 'wpe_screen_get_sync_observer'
../../../Source/WebKit/UIProcess/wpe/DisplayVBlankMonitorWPE.cpp:50: error: undefined reference to 'wpe_screen_get_refresh_rate'
../../../Source/WebKit/UIProcess/wpe/DisplayVBlankMonitorWPE.cpp:57: error: undefined reference to 'wpe_screen_sync_observer_set_callback'
../../../Source/WebKit/UIProcess/wpe/DisplayVBlankMonitorWPE.cpp:73: error: undefined reference to 'wpe_screen_sync_observer_start'
../../../Source/WebKit/UIProcess/wpe/DisplayVBlankMonitorWPE.cpp:81: error: undefined reference to 'wpe_screen_sync_observer_stop'
../../../Source/WebKit/UIProcess/wpe/DisplayVBlankMonitorWPE.cpp:97: error: undefined reference to 'wpe_screen_sync_observer_is_active'
../../../Source/WebKit/UIProcess/wpe/DisplayVBlankMonitorWPE.cpp:81: error: undefined reference to 'wpe_screen_sync_observer_stop'
../../../Source/WebKit/UIProcess/wpe/DisplayVBlankMonitorWPE.cpp:97: error: undefined reference to 'wpe_screen_sync_observer_is_active'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:39: error: undefined reference to 'wpe_screen_get_id'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:45: error: undefined reference to 'wpe_display_get_n_screens'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:47: error: undefined reference to 'wpe_display_get_screen'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:79: error: undefined reference to 'wpe_screen_get_width'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:80: error: undefined reference to 'wpe_screen_get_height'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:83: error: undefined reference to 'wpe_screen_get_x'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:83: error: undefined reference to 'wpe_screen_get_y'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:87: error: undefined reference to 'wpe_screen_get_physical_width'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:87: error: undefined reference to 'wpe_screen_get_physical_height'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:52: error: undefined reference to 'wpe_settings_get_boolean'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:41: error: undefined reference to 'wpe_settings_get_string'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:52: error: undefined reference to 'wpe_settings_get_boolean'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:76: error: undefined reference to 'wpe_settings_get_byte'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:76: error: undefined reference to 'wpe_settings_get_byte'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:76: error: undefined reference to 'wpe_settings_get_byte'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:88: error: undefined reference to 'wpe_settings_get_double'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:64: error: undefined reference to 'wpe_settings_get_uint32'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:64: error: undefined reference to 'wpe_settings_get_uint32'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:52: error: undefined reference to 'wpe_settings_get_boolean'
../../../Source/WebKit/UIProcess/wpe/SystemSettingsManagerProxyWPE.cpp:190: error: undefined reference to 'wpe_display_get_settings'
../../../Source/WebKit/UIProcess/wpe/WPEUtilities.cpp:38: error: undefined reference to 'wpe_display_get_type'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:84: error: undefined reference to 'wpe_view_get_accessible'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:85: error: undefined reference to 'wpe_view_accessible_bind'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:134: error: undefined reference to 'wpe_view_get_preferred_dma_buf_formats'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:139: error: undefined reference to 'wpe_buffer_dma_buf_formats_get_device'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:140: error: undefined reference to 'wpe_buffer_dma_buf_formats_get_n_groups'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:143: error: undefined reference to 'wpe_buffer_dma_buf_formats_get_group_usage'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:155: error: undefined reference to 'wpe_buffer_dma_buf_formats_get_group_device'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:159: error: undefined reference to 'wpe_drm_device_get_primary_node'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:159: error: undefined reference to 'wpe_drm_device_get_render_node'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:161: error: undefined reference to 'wpe_buffer_dma_buf_formats_get_group_n_formats'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:165: error: undefined reference to 'wpe_buffer_dma_buf_formats_get_format_fourcc'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:166: error: undefined reference to 'wpe_buffer_dma_buf_formats_get_format_modifiers'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:204: error: undefined reference to 'wpe_display_get_keymap'
../../../Source/WebKit/UIProcess/wpe/WebPageProxyWPE.cpp:206: error: undefined reference to 'wpe_keymap_get_modifiers'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:67: error: undefined reference to 'wpe_display_get_n_screens'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:68: error: undefined reference to 'wpe_display_get_screen'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:67: error: undefined reference to 'wpe_display_get_n_screens'
../../../Source/WebKit/UIProcess/wpe/ScreenManagerWPE.cpp:68: error: undefined reference to 'wpe_display_get_screen'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:66: error: undefined reference to 'wpe_display_get_clipboard'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:53: error: undefined reference to 'wpe_clipboard_get_formats'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:81: error: undefined reference to 'wpe_display_get_clipboard'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:83: error: undefined reference to 'wpe_clipboard_read_text'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:101: error: undefined reference to 'wpe_display_get_clipboard'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:102: error: undefined reference to 'wpe_clipboard_read_bytes'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:123: error: undefined reference to 'wpe_clipboard_content_new'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:125: error: undefined reference to 'wpe_clipboard_content_set_text'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:115: error: undefined reference to 'wpe_clipboard_content_set_bytes'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:115: error: undefined reference to 'wpe_clipboard_content_set_bytes'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:132: error: undefined reference to 'wpe_clipboard_set_content'
../../../Source/WebKit/WPEPlatform/wpe/GRefPtrWPE.h:36: error: undefined reference to 'wpe_clipboard_content_unref'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:150: error: undefined reference to 'wpe_clipboard_set_content'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:160: error: undefined reference to 'wpe_clipboard_read_bytes'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:170: error: undefined reference to 'wpe_clipboard_get_formats'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:196: error: undefined reference to 'wpe_clipboard_get_change_count'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:200: error: undefined reference to 'wpe_clipboard_content_new'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:252: error: undefined reference to 'wpe_clipboard_get_change_count'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:269: error: undefined reference to 'wpe_clipboard_get_change_count'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:286: error: undefined reference to 'wpe_clipboard_get_formats'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:305: error: undefined reference to 'wpe_clipboard_read_bytes'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:340: error: undefined reference to 'wpe_clipboard_get_change_count'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:206: error: undefined reference to 'wpe_clipboard_content_set_bytes'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:220: error: undefined reference to 'wpe_clipboard_content_set_bytes'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:223: error: undefined reference to 'wpe_clipboard_set_content'
../../../Source/WebKit/WPEPlatform/wpe/GRefPtrWPE.h:36: error: undefined reference to 'wpe_clipboard_content_unref'
../../../Source/WebKit/UIProcess/wpe/WebPasteboardProxyWPE.cpp:209: error: undefined reference to 'wpe_clipboard_content_set_text'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.

@nikolaszimmermann
Copy link
Member Author

To reproduce: CC=clang CXX=clang++ build-webkit --wpe --release --cmakeargs '-DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_ASSERTS=ON -DENABLE_SWIFT_DEMO_URI_SCHEME=ON'

SWIFTLY_TOOLCHAINS_DIR="/opt/swift/toolchains" \
PATH="/opt/swift/bin:${PATH}"

RUN ${CURL_DOWNLOAD} --remote-name https://download.swift.org/swiftly/linux/swiftly-$(uname -m).tar.gz && \
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

swift doesn't provide builds for arm32 neither official support.

# wget https://download.swift.org/swiftly/linux/swiftly-$(uname -m).tar.gz
--2025-10-31 16:05:22--  https://download.swift.org/swiftly/linux/swiftly-armv8l.tar.gz
[...]
HTTP request sent, awaiting response... 404 Not Found
2025-10-31 16:05:23 ERROR 404: Not Found.

But fortunately seems there is community effort to support it.

Check this fork https://github.com/swift-embedded-linux/armhf-debian
it provides binaries ready to use for debian and ubuntu at https://github.com/swift-embedded-linux/armhf-debian/releases (click on show all assets)

This was found via: https://medium.com/@jesselzamora/running-swift-on-32-bit-raspberry-pis-b3307ce713ba

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is just the start - at the moment we cannot even compile WebKit on amd64 🤣 good that you found the arm32 stuff

@philn
Copy link
Member

philn commented Oct 31, 2025

I got the demo working in GTK MB here, on a f43 container (with swift from Fedora, version 6.2) on an x86-64 host. I had to patch the shell wrapper:

diff --git a/Tools/Scripts/swift/swiftc-wrapper.sh b/Tools/Scripts/swift/swiftc-wrapper.sh
index ef56e5e960cb..71d55f8e2565 100755
--- a/Tools/Scripts/swift/swiftc-wrapper.sh
+++ b/Tools/Scripts/swift/swiftc-wrapper.sh
@@ -8,6 +8,15 @@ REAL_SWIFTC=
 args=()

 for arg in "$@"; do
+    if [ "$arg" == "-msse" ]; then
+        continue
+    fi
+    if [ "$arg" == "-msse2" ]; then
+        continue
+    fi
+    if [ "$arg" == "-mfpmath=sse" ]; then
+        continue
+    fi
     if [ "$arg" != "-pthread" ]; then
         if [[ "$arg" == --original-swift-compiler=* ]]; then
             REAL_SWIFTC="${arg#--original-swift-compiler=}"

and then, LD_LIBRARY_PATH=/usr/libexec/swift/6.2/lib/swift/linux/ run-minibrowser --gtk x-swift-demo://

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants