diff --git a/src/allocators/hoard.py b/src/allocators/hoard.py
index c50a616bba5c2a1627504ad5c2a2ca4086045417..f18fcb49588cc45ed76fa6fd1c17e98042598431 100644
--- a/src/allocators/hoard.py
+++ b/src/allocators/hoard.py
@@ -12,7 +12,7 @@ class Hoard (src.allocator.Allocator):
 
         kwargs["sources"] = sources
         kwargs["LD_PRELOAD"] = "{srcdir}/src/libhoard.so"
-        kwargs["build_cmds"] = ["cd {srcdir}/src; make", "mkdir {dir}"]
+        kwargs["build_cmds"] = ["cd {srcdir}/src; make", "mkdir -p {dir}"]
         kwargs["patches"] = ["{patchdir}/hoard_make.patch"]
 
         super().__init__(name, **kwargs)
diff --git a/src/allocators/jemalloc.py b/src/allocators/jemalloc.py
index c64f5afecec8c7c3cd04ea06223e0ba0b4da44b4..f3f43cb5920bc2c0af635921d067a63061bbaf76 100644
--- a/src/allocators/jemalloc.py
+++ b/src/allocators/jemalloc.py
@@ -15,6 +15,6 @@ class Jemalloc (src.allocator.Allocator):
         kwargs["LD_PRELOAD"] = "{srcdir}/lib/libjemalloc.so"
         kwargs["build_cmds"] = ["cd {srcdir}; ./configure --prefix={dir} CFLAGS=-O2",
                                 "cd {srcdir}; make -j4",
-                                "mkdir {dir}"]
+                                "mkdir -p {dir}"]
 
         super().__init__(name, **kwargs)
diff --git a/src/allocators/supermalloc.py b/src/allocators/supermalloc.py
index 7b96b8099279a8effe3d950e6401eae672cb3c96..94aae7db3943f1b3f5a3096d1cb2d43959624421 100644
--- a/src/allocators/supermalloc.py
+++ b/src/allocators/supermalloc.py
@@ -14,7 +14,7 @@ class SuperMalloc (src.allocator.Allocator):
         kwargs["sources"] = sources
         kwargs["LD_PRELOAD"] = "{srcdir}/release/lib/libsupermalloc.so"
         kwargs["build_cmds"] = ["cd {srcdir}/release; make CFLAGS=-O2",
-                                "mkdir {dir}"]
+                                "mkdir -p {dir}"]
 
         super().__init__(name, **kwargs)