Mind that QR codes may use 4 different levels of error correction, labeled L, M, Q and H, respectively. Also, there is a process called masking, with the intention to increase the robustness of the reading process by distributing the black and white pixels over the image. There are also a number of masking patterns available, which can produce a valid QR code, but with different results. Read the specification for more info on those.
That being said, given a generator with the same settings, the output should always be the same, which is what your original question was about. Now, comparing two different generators might result in observing two different images due to the effects mentioned above.
Spec link, randomly picked off of Google (I'm mentioning this because ISO is selling the QR specification as a standard document):
http://raidenii.net/files/datasheets/misc/qr_code.pdf