Build Information
Failed to build ImGui, reference master (473014), with Swift 6.2 for Android on 14 Aug 2026 06:58:24 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-53886769-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.0.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ctreffs/SwiftImGui.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/ctreffs/SwiftImGui
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 473014d chore: migrate Renovate config to .github/renovate.json (#33)
Submodule path '3rdparty/cimgui': checked out '1bb9cd73470f1fcdedf6c3f2e8dc1765463f2ad0'
Submodule path '3rdparty/cimgui/imgui': checked out '1ebb91382757777382b3629ced2a573996e46453'
Submodule '3rdparty/cimgui' (https://github.com/cimgui/cimgui.git) registered for path '3rdparty/cimgui'
Cloning into '/host/spi-builder-workspace/3rdparty/cimgui'...
Submodule 'imgui' (https://github.com/ocornut/imgui.git) registered for path '3rdparty/cimgui/imgui'
Cloning into '/host/spi-builder-workspace/3rdparty/cimgui/imgui'...
Cloned https://github.com/ctreffs/SwiftImGui.git
Revision (git rev-parse @):
473014d2b715d4ade3f301257240e8a2f3b072a3
SUCCESS checkout https://github.com/ctreffs/SwiftImGui.git at master
========================================
Build
========================================
Selected platform: android
Swift version: 6.2
Building package at path: $PWD
https://github.com/ctreffs/SwiftImGui.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886769-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.2-latest: Pulling from saguaro1/spi-images
Digest: sha256:573917aa137cc6f081a4f3d2a0330bac24553e9cd713cd758adf65046f5c6b90
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.2-latest
Building for debugging...
[0/18] Write sources
[1/18] Copying definitions.json
[2/18] Write sources
[4/18] Compiling imgui_tables.cpp
[5/18] Compiling imgui_demo.cpp
[6/18] Write swift-version--11D90AFD9DD3AB2.txt
[7/18] Compiling imgui_widgets.cpp
[8/18] Compiling imgui_draw.cpp
[9/27] Compiling CImGui cimgui.cpp
[10/27] Compiling imgui.cpp
[12/32] Compiling AutoWrapper SwiftKeywords.swift
[13/33] Compiling ImGui ImVec+Extensions.swift
/host/spi-builder-workspace/Sources/ImGui/ImVec+Extensions.swift:10:1: warning: extension declares a conformance of imported type 'ImVec1' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
8 | import CImGui
9 |
10 | extension ImVec1: Equatable {
| |- warning: extension declares a conformance of imported type 'ImVec1' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
11 | public static func == (lhs: ImVec1, rhs: ImVec1) -> Bool {
12 | lhs.x == rhs.x
/host/spi-builder-workspace/Sources/ImGui/ImVec+Extensions.swift:16:1: warning: extension declares a conformance of imported type 'ImVec2' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
14 | }
15 |
16 | extension ImVec2: Equatable {
| |- warning: extension declares a conformance of imported type 'ImVec2' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
17 | public static func == (lhs: ImVec2, rhs: ImVec2) -> Bool {
18 | lhs.x == rhs.x &&
/host/spi-builder-workspace/Sources/ImGui/ImVec+Extensions.swift:23:1: warning: extension declares a conformance of imported type 'ImVec4' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
21 | }
22 |
23 | extension ImVec4: Equatable {
| |- warning: extension declares a conformance of imported type 'ImVec4' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
24 | public static func == (lhs: ImVec4, rhs: ImVec4) -> Bool {
25 | lhs.x == rhs.x &&
[14/33] Compiling AutoWrapper Exceptions.swift
[15/33] Compiling AutoWrapper Definitions.swift
/host/spi-builder-workspace/Sources/AutoWrapper/Definitions.swift:38:16: warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
36 | public let argsT: [ArgsT]
37 | public let ret: DataType?
38 | public let templated = false
| |- warning: immutable property will not be decoded because it is declared with an initial value which cannot be overwritten
| |- note: set the initial value via the initializer or explicitly define a CodingKeys enum without a 'templated' case to silence this warning
| `- note: make the property mutable instead
39 | public let namespace: String?
40 |
[16/33] Compiling ImGui Export.swift
[17/33] Compiling ImGui Helper.swift
[18/33] Emitting module ImGui
/host/spi-builder-workspace/Sources/ImGui/ImVec+Extensions.swift:10:1: warning: extension declares a conformance of imported type 'ImVec1' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
8 | import CImGui
9 |
10 | extension ImVec1: Equatable {
| |- warning: extension declares a conformance of imported type 'ImVec1' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
11 | public static func == (lhs: ImVec1, rhs: ImVec1) -> Bool {
12 | lhs.x == rhs.x
/host/spi-builder-workspace/Sources/ImGui/ImVec+Extensions.swift:16:1: warning: extension declares a conformance of imported type 'ImVec2' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
14 | }
15 |
16 | extension ImVec2: Equatable {
| |- warning: extension declares a conformance of imported type 'ImVec2' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
17 | public static func == (lhs: ImVec2, rhs: ImVec2) -> Bool {
18 | lhs.x == rhs.x &&
/host/spi-builder-workspace/Sources/ImGui/ImVec+Extensions.swift:23:1: warning: extension declares a conformance of imported type 'ImVec4' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
21 | }
22 |
23 | extension ImVec4: Equatable {
| |- warning: extension declares a conformance of imported type 'ImVec4' to imported protocol 'Equatable'; this will not behave correctly if the owners of 'CImGui' introduce this conformance in the future
| `- note: add '@retroactive' to silence this warning
24 | public static func == (lhs: ImVec4, rhs: ImVec4) -> Bool {
25 | lhs.x == rhs.x &&
[19/33] Compiling ImGui ImGui+Definitions.swift
[20/34] Wrapping AST for ImGui for debugging
[22/36] Emitting module DemoMinimal
[23/36] Compiling DemoMinimal main.swift
[24/37] Wrapping AST for DemoMinimal for debugging
[25/37] Write Objects.LinkFileList
error: link command failed with exit code 1 (use -v to see invocation)
ld.lld: error: undefined symbol: cosf
>>> referenced by imgui_draw.cpp:364 (Sources/CImGui/imgui/imgui_draw.cpp:364)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_draw.cpp.o:(ImDrawListSharedData::ImDrawListSharedData())
>>> referenced by imgui_draw.cpp:366 (Sources/CImGui/imgui/imgui_draw.cpp:366)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_draw.cpp.o:(ImDrawListSharedData::ImDrawListSharedData())
>>> referenced by imgui_draw.cpp:381 (Sources/CImGui/imgui/imgui_draw.cpp:381)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_draw.cpp.o:(ImDrawListSharedData::SetCircleTessellationMaxError(float))
>>> referenced 9 more times
ld.lld: error: undefined symbol: sinf
>>> referenced by imgui_draw.cpp:364 (Sources/CImGui/imgui/imgui_draw.cpp:364)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_draw.cpp.o:(ImDrawListSharedData::ImDrawListSharedData())
>>> referenced by imgui_draw.cpp:1154 (Sources/CImGui/imgui/imgui_draw.cpp:1154)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_draw.cpp.o:(ImDrawList::_PathArcToN(ImVec2 const&, float, float, float, int))
>>> referenced by imgui_draw.cpp:1204 (Sources/CImGui/imgui/imgui_draw.cpp:1204)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_draw.cpp.o:(ImDrawList::PathArcTo(ImVec2 const&, float, float, float, int))
>>> referenced 9 more times
>>> did you mean: isinf
>>> defined in: /root/.swiftpm/swift-sdks/swift-6.2-RELEASE-android-0.1.artifactbundle/swift-android/ndk-sysroot/usr/lib/aarch64-linux-android/28/libc.so
ld.lld: error: undefined symbol: acosf
>>> referenced by imgui_draw.cpp:379 (Sources/CImGui/imgui/imgui_draw.cpp:379)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_draw.cpp.o:(ImDrawListSharedData::SetCircleTessellationMaxError(float))
>>> referenced by imgui_draw.cpp:566 (Sources/CImGui/imgui/imgui_draw.cpp:566)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_draw.cpp.o:(ImDrawList::_CalcCircleAutoSegmentCount(float) const)
>>> referenced by imgui_draw.cpp:3829 (Sources/CImGui/imgui/imgui_draw.cpp:3829)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_draw.cpp.o:(ImAcos01(float))
ld.lld: error: undefined symbol: fmodf
>>> referenced by imgui.cpp:2278 (Sources/CImGui/imgui/imgui.cpp:2278)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui.cpp.o:(ImGui::ColorConvertHSVtoRGB(float, float, float, float&, float&, float&))
>>> referenced by imgui_demo.cpp:439 (Sources/CImGui/imgui/imgui_demo.cpp:439)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_demo.cpp.o:(ImGui::ShowDemoWindow(bool*))
>>> referenced by imgui_demo.cpp:7711 (Sources/CImGui/imgui/imgui_demo.cpp:7711)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_demo.cpp.o:(ShowExampleAppCustomRendering(bool*))
>>> referenced 3 more times
ld.lld: error: undefined symbol: powf
>>> referenced by imgui_internal.h:422 (Sources/CImGui/./imgui/imgui_internal.h:422)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/cimgui.cpp.o:(ImPow(float, float))
>>> referenced by imgui_internal.h:422 (Sources/CImGui/imgui/imgui_internal.h:422)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_widgets.cpp.o:(ImPow(float, float))
ld.lld: error: undefined symbol: pow
>>> referenced by imgui_internal.h:423 (Sources/CImGui/./imgui/imgui_internal.h:423)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/cimgui.cpp.o:(ImPow(double, double))
>>> referenced by imgui_internal.h:423 (Sources/CImGui/imgui/imgui_internal.h:423)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_widgets.cpp.o:(ImPow(double, double))
ld.lld: error: undefined symbol: logf
>>> referenced by imgui_internal.h:424 (Sources/CImGui/./imgui/imgui_internal.h:424)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/cimgui.cpp.o:(ImLog(float))
>>> referenced by imgui_internal.h:424 (Sources/CImGui/imgui/imgui_internal.h:424)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_widgets.cpp.o:(ImLog(float))
ld.lld: error: undefined symbol: log
>>> referenced by imgui_internal.h:425 (Sources/CImGui/./imgui/imgui_internal.h:425)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/cimgui.cpp.o:(ImLog(double))
>>> referenced by imgui_internal.h:425 (Sources/CImGui/imgui/imgui_internal.h:425)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_widgets.cpp.o:(ImLog(double))
ld.lld: error: undefined symbol: atan2f
>>> referenced by imgui_widgets.cpp:5436 (Sources/CImGui/imgui/imgui_widgets.cpp:5436)
>>> /host/spi-builder-workspace/.build/aarch64-unknown-linux-android28/debug/CImGui.build/imgui/imgui_widgets.cpp.o:(ImGui::ColorPicker4(char const*, float*, int, float const*))
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[26/37] Linking DemoMinimal
[27/37] Compiling AutoWrapper DataType.swift
[28/37] Compiling AutoWrapper FunctionBodyRenderer.swift
BUILD FAILURE 6.2 android