diff --git a/Makefile b/Makefile
index e96b6c2e891e1a490717ad27c905a75d611e7c01..610d25d6d82a074949ed2b9daff1e2f06b2c96df 100644
--- a/Makefile
+++ b/Makefile
@@ -13,7 +13,7 @@ check: hddemux
 	PATH=.:$$PATH ./testsuite
 
 hddemux: hddemux.c
-	gcc $(CPPFLAGS) $(CFLAGS) $< $(LDFLAGS) -std=c11 -pedantic -Wall -Werror -o $@
+	gcc $(CPPFLAGS) $(CFLAGS) $< -Wl,--as-needed $(LDFLAGS) -std=c11 -pedantic -Wall -Werror -o $@
 
 hddemux.1: hddemux.1.md
 	pandoc -s -f markdown -t man -o $@ $<