Skip to content

swift-java fails to link with prebuilts enabled #9331

@dschaefer2

Description

@dschaefer2

Is it reproducible with SwiftPM command-line tools: swift build, swift test, swift package etc?

  • Confirmed reproduction steps with SwiftPM CLI. The description text must include reproduction steps with either of command-line SwiftPM commands, swift build, swift test, swift package etc.

Description

From the latest https://github.com/swiftlang/swift-java, We are seeing errors from the gold linker in Linux containers using swift-6.2-RELEASE. For example:

/usr/bin/ld.gold: error: /build/.build/prebuilts/swift-syntax/602.0.0/swift-6.2-RELEASE-MacroSupport-ubuntu_noble_aarch64/lib/libMacroSupport.a(FixIt.swift.o): multiple definition of '$s16SwiftDiagnostics5FixItVN'
/usr/bin/ld.gold: /build/.build/aarch64-unknown-linux-gnu/debug/SwiftDiagnostics-tool.build/FixIt.swift.o: previous definition here

They are not present if you --disable-experimental-prebuilts. Tested with Ubuntu jammy and noble.

Expected behavior

Should compile.

Actual behavior

Doesn't

Steps to reproduce

Clone and swift build from a container that has a JDK installed and JAVA_HOME set.

Swift Package Manager version/commit hash

Swift 6.2.

Swift & OS version (output of swift --version ; uname -a)

Swift 6.2.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions