diff --git a/litex/build/sim/core/Makefile b/litex/build/sim/core/Makefile
index e34e456e0..c486e7782 100644
--- a/litex/build/sim/core/Makefile
+++ b/litex/build/sim/core/Makefile
@@ -2,7 +2,7 @@ include variables.mak
 
 CC = gcc
 CFLAGS = -Wall -$(OPT_LEVEL) -ggdb $(if $(COVERAGE), -DVM_COVERAGE)
-LDFLAGS = -lpthread -ljson-c -lm -lstdc++ -ldl -levent
+LDFLAGS = -lpthread -Wl,--no-as-needed -ljson-c -lm -lstdc++ -Wl,--no-as-needed -ldl -levent
 
 CC_SRCS ?= "--cc dut.v"