[swift-users] statically link the standard library on Linux

Trussell, Brandon Brandon.Trussell at disney.com
Sun Feb 14 15:10:50 CST 2016

AFAIK, the ABI isn’t stable, and therefore whenever a binary is compiled all of its dependencies must also be re-compiled.

- Brandon

From: <swift-users-bounces at swift.org<mailto:swift-users-bounces at swift.org>> on behalf of Drew Crawford via swift-users <swift-users at swift.org<mailto:swift-users at swift.org>>
Reply-To: Drew Crawford <drew at sealedabstract.com<mailto:drew at sealedabstract.com>>
Date: Saturday, February 13, 2016 at 7:54 PM
To: "swift-users at swift.org<mailto:swift-users at swift.org>" <swift-users at swift.org<mailto:swift-users at swift.org>>
Subject: [swift-users] statically link the standard library on Linux

Whenever I update the installed Linux snapshot, my binaries break, with errors of the form:

[programname]: symbol lookup error: [programname]: undefined symbol: _TFOs7Processau9argumentsGSaSS_

I assume this is the standard library symbol Process.arguments (which is used in my program).

I guess this is because the standard library is not statically linked/embedded in this executable.  This happens by default on OSX, but I guess might not on Linux.

  *   Is that a bug?
  *   Is there a way to force statically link the standard library on Linux, so my binaries work without a recompile each new snapshot?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-users/attachments/20160214/dd24abf7/attachment.html>

More information about the swift-users mailing list