diff --git a/toolchain/gdb/Makefile b/toolchain/gdb/Makefile
index e4d8235c622f90e5f4507662dc7e61da89b8ac0d..be3e423a1c6e6ebca8598420c477f38d11208382 100644
--- a/toolchain/gdb/Makefile
+++ b/toolchain/gdb/Makefile
@@ -22,6 +22,7 @@ include $(INCLUDE_DIR)/host-build.mk
 define Build/Configure
 	(cd $(PKG_BUILD_DIR); \
 		gdb_cv_func_sigsetjmp=yes \
+		CFLAGS="-O2" \
 		$(PKG_BUILD_DIR)/configure \
 		--prefix=$(TOOLCHAIN_DIR)/usr \
 		--build=$(GNU_HOST_NAME) \
@@ -48,8 +49,8 @@ endef
 
 define Build/Clean
 	rm -rf \
-		$(PKG_BUILD_DIR)
-		$(TOOLCHAIN_DIR)/usr/bin/$(TARGET_CROSS)gdb
+		$(PKG_BUILD_DIR) \
+		$(TOOLCHAIN_DIR)/usr/bin/$(TARGET_CROSS)gdb \
 		$(TOOLCHAIN_DIR)/usr/bin/$(GNU_TARGET_NAME)-gdb
 endef
 
diff --git a/toolchain/gdb/patches/910-missing_header.patch b/toolchain/gdb/patches/910-missing_header.patch
new file mode 100644
index 0000000000000000000000000000000000000000..e3a5cc70bd88ddad8e458a48ab780c1fc1b4c190
--- /dev/null
+++ b/toolchain/gdb/patches/910-missing_header.patch
@@ -0,0 +1,11 @@
+--- a/gdb/inferior.h
++++ b/gdb/inferior.h
+@@ -21,6 +21,8 @@
+    Foundation, Inc., 59 Temple Place - Suite 330,
+    Boston, MA 02111-1307, USA.  */
+ 
++#include <sys/types.h>
++
+ #if !defined (INFERIOR_H)
+ #define INFERIOR_H 1
+