I have my Windows install on a USB, the installer says I can't install on my HDD (GPT) harddisk because I am booting from USB? How can I fix this?
What kind of logic is this? If I boot from DVD I can install on GPT else I can't?
Microsoft erroneously conflates has an EFI partitioned hard disc with has EFI firmware. This is, of course, clearly wrong. It's quite possible — and indeed is becoming ever more desirable these days — to have an EFI partitioned disc on a machine that has old non-EFI firmware.
One of the several consequences of Microsoft's error is that the Windows NT 6.1 installer has to be invoked from an install medium that has in turn been bootstrapped from new EFI firmware, in order for it to accept the idea of installing Windows NT 6.1 to a disc partitioned with the new EFI partitioning scheme. Unfortunately, if the Windows NT install disc is bootstrapped in the old PC98 way, as you've probably done with your USB disc, the installer will think that there's old PC98 firmware, and so declare that it cannot be installed to EFI partitioned hard discs.
As the Microsoft documentation explains, the installation CD-ROM is in fact dual-boot. A machine with old PC98 firmware will bootstrap one operating system image and installation program; and a machine with new EFI firmware will bootstrap another. As Rod Smith explains, one therefore has to manually construct a Windows NT 6.1 install disc that bootstraps in the new EFI way. The Windows NT 6.1 installer will then allow installation to an EFI partitioned hard disc.
Observe the following paragraph from this MSDN article:
Maybe you used traditional BIOS to boot the Windows installer on your USB disk which prevented it from detecting whether UEFI is available. You'll need to make sure UEFI is enabled in your BIOS and the correct .efi file is present on your USB key.