title: ARM Linking Error "Uses VFP register arguments, main.elf does not" on windows 8 only?
body: <p>I'm trying to get started on using an ARM STM32F4 Discovery Board and I'm getting some weird compiling errors when using the "GNU Tools" on Windows 8 </p>
  
  <p>Currently my code is very simple:</p>
  
  <pre><code>#include "stm32f4xx_conf.h"
  
  int main(void)
  {}
  </code></pre>
  
  <p>This compiles using the "make" command perfectly find on Ubuntu 12 and windows 7, however I get the following error in Windows 8.  I installed the same toolchain on all machines.  </p>
  
  <blockquote>
    <p>C:/Program Files (x86)/codesourcery/sourcery g++
    lite/bin/../lib/gcc/arm-none-eabi/4.5.1/../../../../arm-none-eabi/bin/ld.exe:
    error C:\Users\MyName\AppData\Local\Temp\cckUTM2f.o users VFP register
    arguments, main.elf does not</p>
  </blockquote>
  
  <p>I have narrowed down this error down to the flag "-mfloat-abi=hard", which when switched to "-mfloat-abi=soft", lets the code compile, however this conflicts other files that are previously compiled with "-mfloat-abi=hard". </p>
  
  <p>Does anybody know why this would only occur on Windows 8 and how to fix it?  If more information is needed, let me know. Sorry in advance if this is a nooby-question as I'm very new to this!</p>