"Long range" in your example = ADJ + NOUN; together they form an adjectival phrase, and modify "gun".
You would indeed find the phrase hyphenated ("long-range gun") in many publications. However, there is a growing tendency to omit hyphens where no misunderstanding is possible. This is especially true of business English.
In your example, there is a good case for hyphenation, as some readers might well interpret a non-hyphenated version as "a long range-gun".
All the best,