The Swift Package Index logo.Swift Package Index

Build Information

Failed to build PacketCaptureBPF, reference 0.2.10 (aaa6c5), with Swift 6.3 for Android on 12 Apr 2026 15:27:07 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/OperatorFoundation/PacketCaptureBPF.git
Reference: 0.2.10
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/OperatorFoundation/PacketCaptureBPF
 * tag               0.2.10     -> FETCH_HEAD
HEAD is now at aaa6c50 Update CaptureDevice.swift
Cloned https://github.com/OperatorFoundation/PacketCaptureBPF.git
Revision (git rev-parse @):
aaa6c509569cb11904e35dd682bb581b9b2f8083
SUCCESS checkout https://github.com/OperatorFoundation/PacketCaptureBPF.git at 0.2.10
========================================
Build
========================================
Selected platform:         android
Swift version:             6.3
Building package at path:  $PWD
https://github.com/OperatorFoundation/PacketCaptureBPF.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.3-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:9008270ea37a55e78725e6225015adb5eff8582da520c5232bf0499f32c36dc4
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:android-6.3-latest
Fetching https://github.com/OperatorFoundation/Bits.git
Fetching https://github.com/OperatorFoundation/SwiftQueue.git
Fetching https://github.com/OperatorFoundation/Datable.git
Fetching https://github.com/OperatorFoundation/InternetProtocols.git
Fetching https://github.com/OperatorFoundation/PacketStream.git
[1/70] Fetching swiftqueue
[71/115] Fetching swiftqueue, packetstream
[116/237] Fetching swiftqueue, packetstream, bits
[238/636] Fetching swiftqueue, packetstream, bits, datable
[266/1103] Fetching swiftqueue, packetstream, bits, datable, internetprotocols
Fetched https://github.com/OperatorFoundation/SwiftQueue.git from cache (0.30s)
[856/1033] Fetching packetstream, bits, datable, internetprotocols
Fetched https://github.com/OperatorFoundation/Bits.git from cache (0.47s)
Fetched https://github.com/OperatorFoundation/Datable.git from cache (0.62s)
Fetched https://github.com/OperatorFoundation/PacketStream.git from cache (0.62s)
Fetched https://github.com/OperatorFoundation/InternetProtocols.git from cache (0.76s)
Computing version for https://github.com/OperatorFoundation/PacketStream.git
Computed https://github.com/OperatorFoundation/PacketStream.git at 0.2.1 (2.59s)
Computing version for https://github.com/OperatorFoundation/SwiftQueue.git
Computed https://github.com/OperatorFoundation/SwiftQueue.git at 0.1.3 (0.65s)
Computing version for https://github.com/OperatorFoundation/Bits.git
Computed https://github.com/OperatorFoundation/Bits.git at 2.0.1 (0.43s)
Computing version for https://github.com/OperatorFoundation/Datable.git
Computed https://github.com/OperatorFoundation/Datable.git at 3.1.5 (0.43s)
Computing version for https://github.com/OperatorFoundation/InternetProtocols.git
Computed https://github.com/OperatorFoundation/InternetProtocols.git at 2.2.1 (0.41s)
Creating working copy for https://github.com/OperatorFoundation/Datable.git
Working copy of https://github.com/OperatorFoundation/Datable.git resolved at 3.1.5
Creating working copy for https://github.com/OperatorFoundation/PacketStream.git
Working copy of https://github.com/OperatorFoundation/PacketStream.git resolved at 0.2.1
Creating working copy for https://github.com/OperatorFoundation/Bits.git
Working copy of https://github.com/OperatorFoundation/Bits.git resolved at 2.0.1
Creating working copy for https://github.com/OperatorFoundation/InternetProtocols.git
Working copy of https://github.com/OperatorFoundation/InternetProtocols.git resolved at 2.2.1
Creating working copy for https://github.com/OperatorFoundation/SwiftQueue.git
Working copy of https://github.com/OperatorFoundation/SwiftQueue.git resolved at 0.1.3
Building for debugging...
[0/6] Write sources
[5/6] Write swift-version--4F562202D5529B1.txt
[7/40] Emitting module Datable
[8/44] Compiling SwiftQueue Queue.swift
[9/44] Emitting module PacketStream
[10/44] Compiling PacketStream PacketStream.swift
[11/45] Compiling Datable Arrayable.swift
[12/45] Compiling Datable CSVable.swift
[13/45] Compiling Datable Data+Arrayable.swift
[14/45] Compiling Datable Data+Datable.swift
[15/45] Compiling Datable StringableArray+CSVable.swift
[16/45] Compiling Datable UInt+Datable.swift
[17/45] Compiling Datable UInt+MaybeNetworkDatable.swift
[18/45] Compiling Datable UInt+Stringable.swift
[19/45] Compiling Datable Data+Stringable.swift
[20/45] Compiling Datable Datable.swift
[21/45] Compiling Datable DatableConfig.swift
[22/45] Compiling Datable Double+MaybeDatable.swift
[24/45] Emitting module SwiftQueue
[25/45] Compiling SwiftQueue LinkedList.swift
[26/46] Compiling Datable Data+ExpressibleByStringLiteral.swift
[27/46] Compiling Datable Data+Floatable.swift
[28/46] Compiling Datable Data+MaybeIntable.swift
[29/46] Compiling Datable Data+MaybeNetworkIntable.swift
[30/46] Compiling Datable Int+MaybeDatable.swift
[31/46] Compiling Datable Int+Stringable.swift
[32/46] Compiling Datable Intable.swift
[33/46] Compiling Datable MaybeDatable.swift
[34/46] Compiling Datable MaybeIntable.swift
[35/46] Compiling Datable MaybeNetworkIntable.swift
[36/46] Compiling Datable NetworkDatable.swift
[37/46] Compiling Datable NetworkIntable.swift
[38/46] Compiling Datable String+Arrayable.swift
[39/46] Compiling Datable String+Datable.swift
[40/46] Compiling Datable String+Intable.swift
[41/46] Compiling Datable Stringable.swift
[42/46] Compiling Datable Double+Stringable.swift
[43/46] Compiling Datable File.swift
[44/46] Compiling Datable Float+MaybeDatable.swift
[45/46] Compiling Datable Floatable.swift
[48/51] Compiling Bits SimpleBits+MaybeIntable.swift
[49/51] Compiling Bits Bits.swift
[50/51] Compiling Bits Bits+MaybeIntable.swift
[51/51] Emitting module Bits
error: emit-module command failed with exit code 1 (use -v to see invocation)
[53/54] Emitting module PacketCaptureBPF
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:53:18: error: cannot find 'ifreq' in scope
 51 |     let packets = Queue<(Date, Data)>()
 52 |
 53 |     var if_req = ifreq()
    |                  `- error: cannot find 'ifreq' in scope
 54 |     var capturing: Bool = false
 55 |
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:160:13: error: cannot find 'ioctl' in scope
158 |         var bpf_stat = bpf_stat_struct(bs_recv: 0, bs_drop: 0)
159 |
160 |         _ = ioctl(self.fd_bpf, BIOCGSTATS, &bpf_stat)
    |             `- error: cannot find 'ioctl' in scope
161 |         //print("bpf_stat: \(bpf_stat)")
162 |
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:167:19: error: cannot find 'read' in scope
165 |
166 |         // read from bpf device into buffer
167 |         let len = read(self.fd_bpf, &self.buffer, Int(self.buffer_size) )
    |                   `- error: cannot find 'read' in scope
168 |
169 |         guard len != -1 else
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:267:35: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
265 |
266 |                 //bpf is byte aligned
267 |                 let bytesToRead = (((UInt32(bh_hdrlen) + bh_caplen) + (UInt32(BPF_ALIGNMENT) - 1)) & (~(UInt32(BPF_ALIGNMENT) - 1))) - UInt32(bh_hdrlen)
    |                                   `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
268 |                 //print("bytesToRead: \(bytesToRead)")
269 |
[54/54] Compiling PacketCaptureBPF CaptureDevice.swift
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:53:18: error: cannot find 'ifreq' in scope
 51 |     let packets = Queue<(Date, Data)>()
 52 |
 53 |     var if_req = ifreq()
    |                  `- error: cannot find 'ifreq' in scope
 54 |     var capturing: Bool = false
 55 |
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:78:18: error: cannot find 'open' in scope
 76 |         for i in 0...255 {
 77 |             let dev: String = "/dev/bpf" + i.string
 78 |             fd = open(dev, O_RDWR)
    |                  `- error: cannot find 'open' in scope
 79 |             if fd != -1 {
 80 |                 self.fd_bpf = fd
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:78:28: error: cannot find 'O_RDWR' in scope
 76 |         for i in 0...255 {
 77 |             let dev: String = "/dev/bpf" + i.string
 78 |             fd = open(dev, O_RDWR)
    |                            `- error: cannot find 'O_RDWR' in scope
 79 |             if fd != -1 {
 80 |                 self.fd_bpf = fd
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:87:35: error: cannot find 'Darwin' in scope
 85 |             else
 86 |             {
 87 |                 print("* errno: \(Darwin.errno)")
    |                                   `- error: cannot find 'Darwin' in scope
 88 |                 print("* \(dev)")
 89 |             }
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:115:19: error: cannot find 'ioctl' in scope
113 |         self.capturing = true
114 |         // set buffer size
115 |         guard Int(ioctl(self.fd_bpf, BIOCSBLEN, &self.buffer_size)) == 0 else
    |                   `- error: cannot find 'ioctl' in scope
116 |         {
117 |             throw BPFerror.couldNotSetBufferSize
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:122:19: error: cannot find 'ioctl' in scope
120 |
121 |         // bind interface to the bpf device
122 |         guard Int(ioctl(self.fd_bpf, BIOCSETIF, &if_req)) == 0 else
    |                   `- error: cannot find 'ioctl' in scope
123 |         {
124 |             throw BPFerror.couldNotBindInterfaceToBPF
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:130:20: error: cannot find 'ioctl' in scope
128 |         // enable promiscious mode
129 |         // ioctl(fd, BIOCPROMISC, NULL)
130 |         guard Int( ioctl(self.fd_bpf, BIOCPROMISC, 0 )) == 0 else
    |                    `- error: cannot find 'ioctl' in scope
131 |         {
132 |             throw BPFerror.couldNotEnablePromiscuousMode
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:141:19: error: cannot find 'close' in scope
139 |     public func stopCapture() throws {
140 |         self.capturing = false
141 |         guard Int(close(self.fd_bpf)) == 0 else
    |                   `- error: cannot find 'close' in scope
142 |         {
143 |             throw BPFerror.couldNotCloseBPFFileHandle
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:160:13: error: cannot find 'ioctl' in scope
158 |         var bpf_stat = bpf_stat_struct(bs_recv: 0, bs_drop: 0)
159 |
160 |         _ = ioctl(self.fd_bpf, BIOCGSTATS, &bpf_stat)
    |             `- error: cannot find 'ioctl' in scope
161 |         //print("bpf_stat: \(bpf_stat)")
162 |
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:167:19: error: cannot find 'read' in scope
165 |
166 |         // read from bpf device into buffer
167 |         let len = read(self.fd_bpf, &self.buffer, Int(self.buffer_size) )
    |                   `- error: cannot find 'read' in scope
168 |
169 |         guard len != -1 else
/host/spi-builder-workspace/Sources/PacketCaptureBPF/CaptureDevice.swift:267:35: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
265 |
266 |                 //bpf is byte aligned
267 |                 let bytesToRead = (((UInt32(bh_hdrlen) + bh_caplen) + (UInt32(BPF_ALIGNMENT) - 1)) & (~(UInt32(BPF_ALIGNMENT) - 1))) - UInt32(bh_hdrlen)
    |                                   `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
268 |                 //print("bytesToRead: \(bytesToRead)")
269 |
BUILD FAILURE 6.3 android