Web-based or standalone?
For web-based solutions, I have used these three:
QRStuff.com for the sheer amount of pre-set options. Raster formats only unless you sign up.
Littleidiot.be's site allows generating to vector SVG, EPS, and PDF formats.
Kerem Erkan's site does the same, but offers hi-res TIFF files as an option, and his Android and iPhone apps come highly recommended (I've never used either, personally).
For standalone solutions, I've only used Fukuchi Kentaro's
QREncode for Linux. No gui, but it works well and can output PNG,EPS,SVG,ANSI,ANSI256,ASCII,ASCIIi,UTF8, and ANSIUTF8 formats. A Windows version is available at the
Google Code site with re-usable MSVC components available.
Never used anything for smartphone dev stuff, so not sure where to go for that.