Oh the complexities of English writing, where there are no hard and fast rules, I lament thee!
As per http://oxforddictionaries.com/page/punctuationhyphen/hyphen-
, the non-hyphenated form is preferred. Look under the compound nouns section. Though it is acceptable to write in both hyphenated and non-hyphenated (though the words are separated by one m-space) form, provided that one maintains the SAME form in the whole text.
My rule of thumb with situations like these is to err on clarity. If there's no ambiguity in the phrase then leave it non-hyphenated; being more visually appealing.
However, there is a clear distinction between "30-year-old gay men" and "30 year old gay men". The former specifies gay men that are thirty years old, whilst the latter presents a picture of thirty gay toddlers.
In short, stick to non-hyphenated unless the phrase is ambiguous.