aboutsummaryrefslogtreecommitdiff
path: root/src/link
diff options
context:
space:
mode:
Diffstat (limited to 'src/link')
-rw-r--r--src/link/Elf.zig12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/link/Elf.zig b/src/link/Elf.zig
index c31a094093..91ee6f3206 100644
--- a/src/link/Elf.zig
+++ b/src/link/Elf.zig
@@ -1650,9 +1650,15 @@ fn linkWithLLD(self: *Elf, comp: *Compilation) !void {
if (self.base.options.libc_installation != null) {
const needs_grouping = self.base.options.link_mode == .Static;
if (needs_grouping) try argv.append("--start-group");
- try argv.append("-lm");
- try argv.append("-lpthread");
- try argv.append("-lc");
+ // This matches the order of glibc.libs
+ try argv.appendSlice(&[_][]const u8{
+ "-lm",
+ "-lpthread",
+ "-lc",
+ "-ldl",
+ "-lrt",
+ "-lutil",
+ });
if (needs_grouping) try argv.append("--end-group");
} else if (target.isGnuLibC()) {
try argv.append(comp.libunwind_static_lib.?.full_object_path);