Build Information
Failed to build alpaca.swift, reference v0.1.0 (e89aff), with Swift 6.3 for Android on 3 Nov 2026 06:17:58 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344844-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.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.4
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/torinriley/alpaca.git
Reference: v0.1.0
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/torinriley/alpaca
* tag v0.1.0 -> FETCH_HEAD
HEAD is now at e89affe Prepare 0.1.0: install via version tag, citation metadata, changelog, release notes
Cloned https://github.com/torinriley/alpaca.git
Revision (git rev-parse @):
e89affe14b1576f47856f1a1a9472f2f17a8e3bf
SUCCESS checkout https://github.com/torinriley/alpaca.git at v0.1.0
========================================
Build
========================================
Selected platform: android
Swift version: 6.3
Building package at path: $PWD
https://github.com/torinriley/alpaca.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344844-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.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.3-latest: Pulling from saguaro1/spi-images
Digest: sha256:1259d966e40d034d138a282ea8b980b108763342a7ff8ac7ef483c73e99068f3
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.3-latest
Building for debugging...
[0/16] Copying Kernels
[1/16] Write sources
[7/16] Write swift-version-272D24FF697CF451.txt
[9/32] Compiling AlpacaCore LlamaConfig.swift
[10/33] Compiling AlpacaCore LlamaWeights.swift
[11/33] Compiling AlpacaCore Quantization.swift
[12/33] Compiling AlpacaCore ErrorMetrics.swift
[13/33] Compiling AlpacaCore TensorStorage.swift
[14/33] Compiling AlpacaCore KVCache.swift
[15/33] Compiling AlpacaCore LlamaCPUModel.swift
[16/33] Compiling AlpacaCore Tensor.swift
[17/33] Compiling AlpacaCore TensorError.swift
[18/33] Compiling AlpacaCore Sampler.swift
[19/33] Compiling AlpacaCore DType.swift
[20/33] Emitting module AlpacaCore
[21/33] Compiling AlpacaCore MemoryBudget.swift
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:47: error: binary operator '/' cannot be applied to two 'Float' operands
49 | public static func silu(_ x: Tensor) throws -> Tensor {
50 | try requireF32(x, name: "silu")
51 | let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
| |- error: binary operator '/' cannot be applied to two 'Float' operands
| `- note: overloads for '/' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Duration, Double), (Float, Float)
52 | return try Tensor(v, shape: x.shape)
53 | }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:54: error: no exact matches in call to global function 'exp'
49 | public static func silu(_ x: Tensor) throws -> Tensor {
50 | try requireF32(x, name: "silu")
51 | let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
| `- error: no exact matches in call to global function 'exp'
52 | return try Tensor(v, shape: x.shape)
53 | }
Foundation.exp:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func exp(_ x: CGFloat) -> CGFloat
| `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
| `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
129 | float expf(float __x);
130 | long double expl(long double __x);
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:58: error: unary operator '-' cannot be applied to an operand of type 'Float'
49 | public static func silu(_ x: Tensor) throws -> Tensor {
50 | try requireF32(x, name: "silu")
51 | let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
| |- error: unary operator '-' cannot be applied to an operand of type 'Float'
| `- note: overloads for '-' exist with these partially matching parameter lists: (Float)
52 | return try Tensor(v, shape: x.shape)
53 | }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:52: error: binary operator '+' cannot be applied to operands of type 'Float' and 'CGFloat'
49 | public static func silu(_ x: Tensor) throws -> Tensor {
50 | try requireF32(x, name: "silu")
51 | let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
| |- error: binary operator '+' cannot be applied to operands of type 'Float' and 'CGFloat'
| `- note: overloads for '+' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Float, Float)
52 | return try Tensor(v, shape: x.shape)
53 | }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:171:44: error: no exact matches in call to global function 'exp'
169 | for i in 0..<d { mx = max(mx, v[base + i]) }
170 | var sum: Float = 0
171 | for i in 0..<d { v[base + i] = exp(v[base + i] - mx); sum += v[base + i] }
| `- error: no exact matches in call to global function 'exp'
172 | for i in 0..<d { v[base + i] /= sum }
173 | }
Foundation.exp:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func exp(_ x: CGFloat) -> CGFloat
| `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
| `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
129 | float expf(float __x);
130 | long double expl(long double __x);
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:171:44: error: no 'exp' candidates produce the expected contextual result type 'Float'
169 | for i in 0..<d { mx = max(mx, v[base + i]) }
170 | var sum: Float = 0
171 | for i in 0..<d { v[base + i] = exp(v[base + i] - mx); sum += v[base + i] }
| `- error: no 'exp' candidates produce the expected contextual result type 'Float'
172 | for i in 0..<d { v[base + i] /= sum }
173 | }
Foundation.exp:1:13: note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
1 | public func exp(_ x: CGFloat) -> CGFloat
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| `- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: 'exp' produces 'Double', not the expected contextual result type 'Float'
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| `- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
129 | float expf(float __x);
130 | long double expl(long double __x);
[22/33] Compiling AlpacaCore CPUOps.swift
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:47: error: binary operator '/' cannot be applied to two 'Float' operands
49 | public static func silu(_ x: Tensor) throws -> Tensor {
50 | try requireF32(x, name: "silu")
51 | let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
| |- error: binary operator '/' cannot be applied to two 'Float' operands
| `- note: overloads for '/' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Duration, Double), (Float, Float)
52 | return try Tensor(v, shape: x.shape)
53 | }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:54: error: no exact matches in call to global function 'exp'
49 | public static func silu(_ x: Tensor) throws -> Tensor {
50 | try requireF32(x, name: "silu")
51 | let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
| `- error: no exact matches in call to global function 'exp'
52 | return try Tensor(v, shape: x.shape)
53 | }
Foundation.exp:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func exp(_ x: CGFloat) -> CGFloat
| `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
| `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
129 | float expf(float __x);
130 | long double expl(long double __x);
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:58: error: unary operator '-' cannot be applied to an operand of type 'Float'
49 | public static func silu(_ x: Tensor) throws -> Tensor {
50 | try requireF32(x, name: "silu")
51 | let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
| |- error: unary operator '-' cannot be applied to an operand of type 'Float'
| `- note: overloads for '-' exist with these partially matching parameter lists: (Float)
52 | return try Tensor(v, shape: x.shape)
53 | }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:51:52: error: binary operator '+' cannot be applied to operands of type 'Float' and 'CGFloat'
49 | public static func silu(_ x: Tensor) throws -> Tensor {
50 | try requireF32(x, name: "silu")
51 | let v = try x.toFloatArray().map { $0 / (1 + exp(-$0)) }
| |- error: binary operator '+' cannot be applied to operands of type 'Float' and 'CGFloat'
| `- note: overloads for '+' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Float, Float)
52 | return try Tensor(v, shape: x.shape)
53 | }
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:171:44: error: no exact matches in call to global function 'exp'
169 | for i in 0..<d { mx = max(mx, v[base + i]) }
170 | var sum: Float = 0
171 | for i in 0..<d { v[base + i] = exp(v[base + i] - mx); sum += v[base + i] }
| `- error: no exact matches in call to global function 'exp'
172 | for i in 0..<d { v[base + i] /= sum }
173 | }
Foundation.exp:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func exp(_ x: CGFloat) -> CGFloat
| `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
| `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
129 | float expf(float __x);
130 | long double expl(long double __x);
/host/spi-builder-workspace/Sources/AlpacaCore/Operations/CPUOps.swift:171:44: error: no 'exp' candidates produce the expected contextual result type 'Float'
169 | for i in 0..<d { mx = max(mx, v[base + i]) }
170 | var sum: Float = 0
171 | for i in 0..<d { v[base + i] = exp(v[base + i] - mx); sum += v[base + i] }
| `- error: no 'exp' candidates produce the expected contextual result type 'Float'
172 | for i in 0..<d { v[base + i] /= sum }
173 | }
Foundation.exp:1:13: note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
1 | public func exp(_ x: CGFloat) -> CGFloat
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
| `- note: 'exp' produces 'CGFloat', not the expected contextual result type 'Float'
/root/.swiftpm/swift-sdks/swift-6.3.2-RELEASE_android.artifactbundle/swift-android/ndk-sysroot/usr/include/math.h:128:8: note: 'exp' produces 'Double', not the expected contextual result type 'Float'
126 | long double tanhl(long double __x);
127 |
128 | double exp(double __x);
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| |- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
| `- note: 'exp' produces 'Double', not the expected contextual result type 'Float'
129 | float expf(float __x);
130 | long double expl(long double __x);
[23/33] Compiling AlpacaTokenizers ByteLevel.swift
[24/33] Emitting module AlpacaTokenizers
BUILD FAILURE 6.3 android