Build Information
Failed to build XPkg, reference main (56068d
), with Swift 6.2 (beta) for Linux on 19 Jun 2025 15:58:07 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.2-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/elegantchaos/Xpkg.git
Reference: main
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/elegantchaos/Xpkg
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 56068d1 Added better version output, and --about command.
Cloned https://github.com/elegantchaos/Xpkg.git
Revision (git rev-parse @):
56068d160f173316a367666ab79a91af02701198
SUCCESS checkout https://github.com/elegantchaos/Xpkg.git at main
========================================
Build
========================================
Selected platform: linux
Swift version: 6.2
Building package at path: $PWD
https://github.com/elegantchaos/Xpkg.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.2-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:f81a7bd7aa87a0f81848d48c5bcc03f5f78deebd37fa5f9be9913077205d3687
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.2-latest
Fetching https://github.com/elegantchaos/SemanticVersion.git
Fetching https://github.com/elegantchaos/XPkgPackage.git
Fetching https://github.com/elegantchaos/Logger.git
Fetching https://github.com/elegantchaos/Files.git
Fetching https://github.com/elegantchaos/Versionator.git
[1/687] Fetching files
[36/1071] Fetching files, versionator
[990/3171] Fetching files, versionator, logger
[1135/3400] Fetching files, versionator, logger, xpkgpackage
[1305/3552] Fetching files, versionator, logger, xpkgpackage, semanticversion
Fetched https://github.com/elegantchaos/Versionator.git from cache (0.57s)
Fetched https://github.com/elegantchaos/XPkgPackage.git from cache (0.59s)
Fetched https://github.com/elegantchaos/Files.git from cache (0.59s)
Fetching https://github.com/elegantchaos/Expressions.git
Fetched https://github.com/elegantchaos/SemanticVersion.git from cache (0.61s)
Fetching https://github.com/elegantchaos/CommandShell.git
Fetching https://github.com/elegantchaos/Runner.git
Fetched https://github.com/elegantchaos/Logger.git from cache (0.63s)
[1/354] Fetching commandshell
[355/552] Fetching commandshell, expressions
[538/1228] Fetching commandshell, expressions, runner
Fetched https://github.com/elegantchaos/CommandShell.git from cache (0.47s)
Fetched https://github.com/elegantchaos/Expressions.git from cache (0.48s)
Fetched https://github.com/elegantchaos/Runner.git from cache (0.45s)
Computing version for https://github.com/elegantchaos/Versionator.git
Computed https://github.com/elegantchaos/Versionator.git at 1.0.3 (1.78s)
Computing version for https://github.com/elegantchaos/Files.git
Computed https://github.com/elegantchaos/Files.git at 1.2.2 (0.76s)
Fetching https://github.com/elegantchaos/XCTestExtensions.git
[1/571] Fetching xctestextensions
Fetched https://github.com/elegantchaos/XCTestExtensions.git from cache (0.46s)
Computing version for https://github.com/elegantchaos/Expressions.git
Computed https://github.com/elegantchaos/Expressions.git at 1.1.1 (1.34s)
Computing version for https://github.com/elegantchaos/CommandShell.git
Computed https://github.com/elegantchaos/CommandShell.git at 2.1.5 (0.88s)
Fetching https://github.com/apple/swift-argument-parser
[1/15380] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser from cache (1.20s)
Computing version for https://github.com/elegantchaos/SemanticVersion.git
Computed https://github.com/elegantchaos/SemanticVersion.git at 1.1.2 (1.76s)
Computing version for https://github.com/elegantchaos/Runner.git
Computed https://github.com/elegantchaos/Runner.git at 1.3.3 (0.49s)
Computing version for https://github.com/elegantchaos/Logger.git
Computed https://github.com/elegantchaos/Logger.git at 1.8.2 (0.56s)
Computing version for https://github.com/elegantchaos/XPkgPackage.git
Computed https://github.com/elegantchaos/XPkgPackage.git at 1.2.0 (0.52s)
Computing version for https://github.com/elegantchaos/XCTestExtensions.git
Computed https://github.com/elegantchaos/XCTestExtensions.git at 1.5.1 (0.74s)
Fetching https://github.com/elegantchaos/Matchable.git
[1/113] Fetching matchable
Fetched https://github.com/elegantchaos/Matchable.git from cache (0.39s)
Computing version for https://github.com/elegantchaos/Matchable.git
Computed https://github.com/elegantchaos/Matchable.git at 1.0.7 (1.25s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 0.5.0 (0.92s)
Creating working copy for https://github.com/elegantchaos/Runner.git
Working copy of https://github.com/elegantchaos/Runner.git resolved at 1.3.3
Creating working copy for https://github.com/elegantchaos/Expressions.git
Working copy of https://github.com/elegantchaos/Expressions.git resolved at 1.1.1
Creating working copy for https://github.com/elegantchaos/Versionator.git
Working copy of https://github.com/elegantchaos/Versionator.git resolved at 1.0.3
Creating working copy for https://github.com/elegantchaos/Matchable.git
Working copy of https://github.com/elegantchaos/Matchable.git resolved at 1.0.7
Creating working copy for https://github.com/elegantchaos/CommandShell.git
Working copy of https://github.com/elegantchaos/CommandShell.git resolved at 2.1.5
Creating working copy for https://github.com/elegantchaos/Files.git
Working copy of https://github.com/elegantchaos/Files.git resolved at 1.2.2
Creating working copy for https://github.com/elegantchaos/XPkgPackage.git
Working copy of https://github.com/elegantchaos/XPkgPackage.git resolved at 1.2.0
Creating working copy for https://github.com/elegantchaos/SemanticVersion.git
Working copy of https://github.com/elegantchaos/SemanticVersion.git resolved at 1.1.2
Creating working copy for https://github.com/elegantchaos/XCTestExtensions.git
Working copy of https://github.com/elegantchaos/XCTestExtensions.git resolved at 1.5.1
Creating working copy for https://github.com/elegantchaos/Logger.git
Working copy of https://github.com/elegantchaos/Logger.git resolved at 1.8.2
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 0.5.0
[0/7] Write sources
[2/7] Write swift-version-24593BA9C3E375BF.txt
[4/9] Compiling Runner Runner.swift
[5/9] Emitting module Runner
[6/10] Wrapping AST for Runner for debugging
[8/12] Emitting module VersionatorTool
[9/12] Compiling VersionatorTool VersionatorTool.swift
[10/13] Wrapping AST for VersionatorTool for debugging
[11/13] Write Objects.LinkFileList
[12/13] Linking VersionatorTool-tool
[1/1] Compiling plugin VersionatorPlugin
Building for debugging...
[1/33] Write sources
[13/33] Write swift-version-24593BA9C3E375BF.txt
[15/70] Compiling Logger OSLogHandler.swift
[16/71] Compiling Logger NSLogHandler.swift
[17/71] Compiling Logger Handler.swift
[18/71] Compiling Files ThrowingManager.swift
/host/spi-builder-workspace/.build/checkouts/Files/Sources/Files/Throwing/ThrowingManager.swift:39:1: error: type 'ThrowingManager' does not conform to protocol 'Equatable'
7 |
8 | public struct ThrowingManager: FolderManager {
9 | public let manager: FileManager
| `- note: stored property type 'FileManager' does not conform to protocol 'Equatable', preventing synthesized conformance of 'ThrowingManager' to 'Equatable'
10 | public typealias FileType = ThrowingFile
11 | public typealias FolderType = ThrowingFolder
:
37 | }
38 |
39 | extension ThrowingManager: Equatable {
| |- error: type 'ThrowingManager' does not conform to protocol 'Equatable'
| `- note: add stubs for conformance
40 |
41 | }
Swift.==:1:24: note: candidate would match if 'ThrowingManager' conformed to 'RawRepresentable'
1 | @inlinable public func == <T>(lhs: T, rhs: T) -> Bool where T : RawRepresentable, T.RawValue : Equatable
| `- note: candidate would match if 'ThrowingManager' conformed to 'RawRepresentable'
Swift.FloatingPoint.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'FloatingPoint'
1 | protocol FloatingPoint {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to 'FloatingPoint'
3 |
Swift.BinaryInteger.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'BinaryInteger'
1 | protocol BinaryInteger {
2 | public static func == <Other>(lhs: Self, rhs: Other) -> Bool where Other : BinaryInteger}
| `- note: candidate would match if 'ThrowingManager' conformed to 'BinaryInteger'
3 |
Swift._Pointer.==:2:20: note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
1 | protocol _Pointer {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
3 |
Swift._Pointer.==:2:31: note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
1 | protocol _Pointer {
2 | @inlinable public static func == <Other>(lhs: Self, rhs: Other) -> Bool where Other : _Pointer}
| `- note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
3 |
Swift.Strideable.==:2:31: note: candidate would match if 'ThrowingManager' conformed to 'Strideable'
1 | protocol Strideable {
2 | @inlinable public static func == (x: Self, y: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to 'Strideable'
3 |
Swift.StringProtocol.==:2:31: note: candidate would match if 'ThrowingManager' conformed to 'StringProtocol'
1 | protocol StringProtocol {
2 | @inlinable public static func == <RHS>(lhs: Self, rhs: RHS) -> Bool where RHS : StringProtocol}
| `- note: candidate would match if 'ThrowingManager' conformed to 'StringProtocol'
3 |
Swift.SIMD.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'SIMD'
1 | protocol SIMD {
2 | public static func == (a: Self, b: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to 'SIMD'
3 |
Foundation.__BridgedNSError.==:2:20: note: candidate would match if 'ThrowingManager' conformed to '__BridgedNSError'
1 | protocol __BridgedNSError {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to '__BridgedNSError'
3 |
Foundation._BridgedStoredNSError.==:2:20: note: candidate would match if 'ThrowingManager' conformed to '_BridgedStoredNSError'
1 | protocol _BridgedStoredNSError {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to '_BridgedStoredNSError'
3 |
FoundationEssentials.AttributedStringProtocol.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'AttributedStringProtocol'
1 | protocol AttributedStringProtocol {
2 | public static func == <RHS>(lhs: Self, rhs: RHS) -> Bool where RHS : AttributedStringProtocol}
| `- note: candidate would match if 'ThrowingManager' conformed to 'AttributedStringProtocol'
3 |
Swift.Equatable.==:2:13: note: protocol requires function '==' with type '(ThrowingManager, ThrowingManager) -> Bool'
1 | protocol Equatable {
2 | static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: protocol requires function '==' with type '(ThrowingManager, ThrowingManager) -> Bool'
3 |
[19/71] Compiling Files ThrowingReference.swift
/host/spi-builder-workspace/.build/checkouts/Files/Sources/Files/Throwing/ThrowingManager.swift:39:1: error: type 'ThrowingManager' does not conform to protocol 'Equatable'
7 |
8 | public struct ThrowingManager: FolderManager {
9 | public let manager: FileManager
| `- note: stored property type 'FileManager' does not conform to protocol 'Equatable', preventing synthesized conformance of 'ThrowingManager' to 'Equatable'
10 | public typealias FileType = ThrowingFile
11 | public typealias FolderType = ThrowingFolder
:
37 | }
38 |
39 | extension ThrowingManager: Equatable {
| |- error: type 'ThrowingManager' does not conform to protocol 'Equatable'
| `- note: add stubs for conformance
40 |
41 | }
Swift.==:1:24: note: candidate would match if 'ThrowingManager' conformed to 'RawRepresentable'
1 | @inlinable public func == <T>(lhs: T, rhs: T) -> Bool where T : RawRepresentable, T.RawValue : Equatable
| `- note: candidate would match if 'ThrowingManager' conformed to 'RawRepresentable'
Swift.FloatingPoint.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'FloatingPoint'
1 | protocol FloatingPoint {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to 'FloatingPoint'
3 |
Swift.BinaryInteger.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'BinaryInteger'
1 | protocol BinaryInteger {
2 | public static func == <Other>(lhs: Self, rhs: Other) -> Bool where Other : BinaryInteger}
| `- note: candidate would match if 'ThrowingManager' conformed to 'BinaryInteger'
3 |
Swift._Pointer.==:2:20: note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
1 | protocol _Pointer {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
3 |
Swift._Pointer.==:2:31: note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
1 | protocol _Pointer {
2 | @inlinable public static func == <Other>(lhs: Self, rhs: Other) -> Bool where Other : _Pointer}
| `- note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
3 |
Swift.Strideable.==:2:31: note: candidate would match if 'ThrowingManager' conformed to 'Strideable'
1 | protocol Strideable {
2 | @inlinable public static func == (x: Self, y: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to 'Strideable'
3 |
Swift.StringProtocol.==:2:31: note: candidate would match if 'ThrowingManager' conformed to 'StringProtocol'
1 | protocol StringProtocol {
2 | @inlinable public static func == <RHS>(lhs: Self, rhs: RHS) -> Bool where RHS : StringProtocol}
| `- note: candidate would match if 'ThrowingManager' conformed to 'StringProtocol'
3 |
Swift.SIMD.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'SIMD'
1 | protocol SIMD {
2 | public static func == (a: Self, b: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to 'SIMD'
3 |
Foundation.__BridgedNSError.==:2:20: note: candidate would match if 'ThrowingManager' conformed to '__BridgedNSError'
1 | protocol __BridgedNSError {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to '__BridgedNSError'
3 |
Foundation._BridgedStoredNSError.==:2:20: note: candidate would match if 'ThrowingManager' conformed to '_BridgedStoredNSError'
1 | protocol _BridgedStoredNSError {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to '_BridgedStoredNSError'
3 |
FoundationEssentials.AttributedStringProtocol.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'AttributedStringProtocol'
1 | protocol AttributedStringProtocol {
2 | public static func == <RHS>(lhs: Self, rhs: RHS) -> Bool where RHS : AttributedStringProtocol}
| `- note: candidate would match if 'ThrowingManager' conformed to 'AttributedStringProtocol'
3 |
Swift.Equatable.==:2:13: note: protocol requires function '==' with type '(ThrowingManager, ThrowingManager) -> Bool'
1 | protocol Equatable {
2 | static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: protocol requires function '==' with type '(ThrowingManager, ThrowingManager) -> Bool'
3 |
[20/71] Emitting module Runner
[21/74] Compiling Logger PrintHandler.swift
[22/74] Compiling Logger ManagerSettings.swift
[24/74] Compiling Logger UserDefaultsManagerSettings.swift
[25/74] Emitting module Expressions
[26/74] Compiling Expressions Expressions.swift
[27/74] Compiling Expressions Substitution.swift
[28/74] Compiling Files ThrowingFolder.swift
[29/74] Compiling Files ThrowingItem.swift
[31/75] Compiling Files URL+General.swift
[32/75] Compiling Files URL+Security.swift
[32/75] Wrapping AST for Runner for debugging
[34/75] Emitting module Runner
[35/75] Compiling Runner Runner.swift
[36/77] Compiling SemanticVersion SemanticVersion+Comparabl.swift
[37/77] Compiling SemanticVersion SemanticVersion.swift
[38/77] Emitting module SemanticVersion
[40/77] Compiling Files NonThrowingManager.swift
[41/77] Compiling Files ThrowingFile.swift
[42/77] Compiling Files NonThrowingFolder.swift
[43/77] Compiling Files NonThrowingItem.swift
[44/78] Compiling Files FileManager+Directories.swift
[45/78] Compiling Files FileManager+General.swift
[46/78] Compiling Files FolderManager.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[47/78] Emitting module Files
/host/spi-builder-workspace/.build/checkouts/Files/Sources/Files/Throwing/ThrowingManager.swift:39:1: error: type 'ThrowingManager' does not conform to protocol 'Equatable'
7 |
8 | public struct ThrowingManager: FolderManager {
9 | public let manager: FileManager
| `- note: stored property type 'FileManager' does not conform to protocol 'Equatable', preventing synthesized conformance of 'ThrowingManager' to 'Equatable'
10 | public typealias FileType = ThrowingFile
11 | public typealias FolderType = ThrowingFolder
:
37 | }
38 |
39 | extension ThrowingManager: Equatable {
| |- error: type 'ThrowingManager' does not conform to protocol 'Equatable'
| `- note: add stubs for conformance
40 |
41 | }
Swift.==:1:24: note: candidate would match if 'ThrowingManager' conformed to 'RawRepresentable'
1 | @inlinable public func == <T>(lhs: T, rhs: T) -> Bool where T : RawRepresentable, T.RawValue : Equatable
| `- note: candidate would match if 'ThrowingManager' conformed to 'RawRepresentable'
Swift.FloatingPoint.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'FloatingPoint'
1 | protocol FloatingPoint {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to 'FloatingPoint'
3 |
Swift.BinaryInteger.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'BinaryInteger'
1 | protocol BinaryInteger {
2 | public static func == <Other>(lhs: Self, rhs: Other) -> Bool where Other : BinaryInteger}
| `- note: candidate would match if 'ThrowingManager' conformed to 'BinaryInteger'
3 |
Swift._Pointer.==:2:20: note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
1 | protocol _Pointer {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
3 |
Swift._Pointer.==:2:31: note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
1 | protocol _Pointer {
2 | @inlinable public static func == <Other>(lhs: Self, rhs: Other) -> Bool where Other : _Pointer}
| `- note: candidate would match if 'ThrowingManager' conformed to '_Pointer'
3 |
Swift.Strideable.==:2:31: note: candidate would match if 'ThrowingManager' conformed to 'Strideable'
1 | protocol Strideable {
2 | @inlinable public static func == (x: Self, y: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to 'Strideable'
3 |
Swift.StringProtocol.==:2:31: note: candidate would match if 'ThrowingManager' conformed to 'StringProtocol'
1 | protocol StringProtocol {
2 | @inlinable public static func == <RHS>(lhs: Self, rhs: RHS) -> Bool where RHS : StringProtocol}
| `- note: candidate would match if 'ThrowingManager' conformed to 'StringProtocol'
3 |
Swift.SIMD.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'SIMD'
1 | protocol SIMD {
2 | public static func == (a: Self, b: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to 'SIMD'
3 |
Foundation.__BridgedNSError.==:2:20: note: candidate would match if 'ThrowingManager' conformed to '__BridgedNSError'
1 | protocol __BridgedNSError {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to '__BridgedNSError'
3 |
Foundation._BridgedStoredNSError.==:2:20: note: candidate would match if 'ThrowingManager' conformed to '_BridgedStoredNSError'
1 | protocol _BridgedStoredNSError {
2 | public static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: candidate would match if 'ThrowingManager' conformed to '_BridgedStoredNSError'
3 |
FoundationEssentials.AttributedStringProtocol.==:2:20: note: candidate would match if 'ThrowingManager' conformed to 'AttributedStringProtocol'
1 | protocol AttributedStringProtocol {
2 | public static func == <RHS>(lhs: Self, rhs: RHS) -> Bool where RHS : AttributedStringProtocol}
| `- note: candidate would match if 'ThrowingManager' conformed to 'AttributedStringProtocol'
3 |
Swift.Equatable.==:2:13: note: protocol requires function '==' with type '(ThrowingManager, ThrowingManager) -> Bool'
1 | protocol Equatable {
2 | static func == (lhs: Self, rhs: Self) -> Bool}
| `- note: protocol requires function '==' with type '(ThrowingManager, ThrowingManager) -> Bool'
3 |
[47/78] Wrapping AST for Expressions for debugging
[49/78] Compiling Logger Manager.swift
[50/78] Wrapping AST for Runner for debugging
[52/80] Compiling Files Item.swift
[53/80] Compiling Files ItemContainer.swift
[54/80] Compiling Files ItemLocation.swift
[55/81] Compiling Files ItemName.swift
[56/81] Compiling Files NonThrowingFile.swift
[57/81] Emitting module VersionatorTool
[58/82] Emitting module Logger
[60/86] Wrapping AST for SemanticVersion for debugging
[62/86] Emitting module ArgumentParserToolInfo
BUILD FAILURE 6.2 linux