diff --git a/repos/base-linux/lib/mk/lx_hybrid.mk b/repos/base-linux/lib/mk/lx_hybrid.mk
index 43f93b6ee1..f76f4256a1 100644
--- a/repos/base-linux/lib/mk/lx_hybrid.mk
+++ b/repos/base-linux/lib/mk/lx_hybrid.mk
@@ -2,6 +2,10 @@ SRC_CC += lx_hybrid.cc new_delete.cc capability_space.cc
SRC_CC += signal_transmitter.cc signal.cc
SRC_C += libgcc.c
+# new_delete.cc uses libsupc++ which means we need to access
+# its include directory.
+STDINC := yes
+
vpath new_delete.cc $(BASE_DIR)/src/lib/cxx
vpath lx_hybrid.cc $(REP_DIR)/src/lib/lx_hybrid
vpath libgcc.c $(REP_DIR)/src/lib/lx_hybrid
diff --git a/repos/base/src/lib/cxx/new_delete.cc b/repos/base/src/lib/cxx/new_delete.cc
index 62bb3563ec..eca8dee86f 100644
--- a/repos/base/src/lib/cxx/new_delete.cc
+++ b/repos/base/src/lib/cxx/new_delete.cc
@@ -11,10 +11,14 @@
* under the terms of the GNU Affero General Public License version 3.
*/
+/* Genode includes */
#include
#include
#include
+/* C++ runtime includes */
+#include
+
using Genode::size_t;
using Genode::Allocator;
using Genode::Deallocator;
@@ -86,3 +90,9 @@ __attribute__((weak)) void operator delete (void *, unsigned long, std::align_va
Genode::error("cxx: operator delete (void *, unsigned long, std::align_val_t) called - not implemented. "
"A working implementation is available in the 'stdcxx' library.");
}
+
+__attribute__((weak)) void operator delete (void *, std::align_val_t) noexcept
+{
+ Genode::error("cxx: operator delete (void *, std::align_val_t) called - not implemented. "
+ "A working implementation is available in the 'stdcxx' library.");
+}