diff --git a/Makefile.include b/Makefile.include
index 1144efbd5ac61e8a1806acbfcb2985fdd09a8ca7..8e1854f7b2097b6a34868a04f8ed06b37678f67b 100644
--- a/Makefile.include
+++ b/Makefile.include
@@ -178,7 +178,16 @@ distclean:
 	-@for i in $(USEPKG) ; do "$(MAKE)" -C $(RIOTBASE)/pkg/$$i distclean ; done
 	-@rm -rf $(BINDIRBASE)
 
-flash: all
+flash: $(filter all all-%, $(MAKECMDGOALS))
+	@if [ ! -f $${HEXFILE} ]; then \
+		echo ""; \
+		echo ""; \
+		echo "You need to create a hex file before you can flash it."; \
+		echo "Unless you know otherwise, 'make all' usually does what you want."; \
+		echo ""; \
+		echo ""; \
+		exit 1; \
+	fi
 	$(FLASHER) $(FFLAGS)
 
 term:
diff --git a/boards/native/Makefile.include b/boards/native/Makefile.include
index ef82dbef3db5522c19b456d973327a074b9d0352..1c4f5e963cf09eb880b02ac601c4cab20132b3ec 100644
--- a/boards/native/Makefile.include
+++ b/boards/native/Makefile.include
@@ -16,7 +16,7 @@ export AR ?= $(PREFIX)ar
 export AS ?= $(PREFIX)as
 export LINK ?= $(PREFIX)gcc
 export SIZE ?= $(PREFIX)size
-export OBJCOPY = true
+export OBJCOPY = $(PREFIX)objcopy
 
 export DEBUGGER = gdb
 export TERMPROG = $(ELF)