a long time / long

1a. We have been there for a long time.
1b. We have been there for long.
2a. We haven’t been there for a long time.
2b. We haven’t been there for long.
Please correct the above and comment. Thanks.

1a Often illogical. Usually you cannot use ‘there’, only ‘here’, because if you are elsewhere you cannot be where you are now.
The only exception would be if you were indicating the specific place where you reside (where ‘been’ indicates ‘lived in a place’). For example, you meet a friend in town that you haven’t seen for some time:
Friend: Where are you living now?
You: We’re still in the house on YY Street.
Friend: Really? Have you been there all these years?
You: Oh yes, we have been there for a long time.

1b incorrect.
Possible:
We have been there a long time.

2b incorrect.
We haven’t been there long. No ‘for’.

‘A long time’ and ‘long’ or ‘for long’ are not always interchangeable.

1a. I haven’t had a cigarette in ages.
1b. I haven’t had a cigarette for long.
1c. I haven’t had a cigarette for a long time.
2a. We haven’t cleaned the latrines in a long time.
2b. We haven’t cleaned the latrines for a long time.
3. They are suffering from long-term unemployment.
4. Have you made any long-term plans to solve this problem?
5. The drug has a long-term side effects on the patients who use it.
6. I’m sure it’s the best solution in the long run.
7. Cuts in company spending now should lead to profits in the long term.
8. They are the longtime residents of the neighborhood.
9. He is the longtime chairman of the committee.
Please correct and comment. Thanks.

Crossed out = incorrect
Bold = corrected
1a. I haven’t had a cigarette in ages.
1b. I haven’t had a cigarette for long.
1c. I haven’t had a cigarette for a long time.
2a. We haven’t cleaned the latrines in a long time.
2b. We haven’t cleaned the latrines for a long time.
3. They are suffering from long-term unemployment.
4. Have you made any long-term plans to solve this problem?
5. The drug has a long-term side effect on the patients who use it. <-- or ‘…has long-term side effects…’
6. I’m sure it’s the best solution in the long run.
7. Cuts in company spending now should lead to profits in the long term.
8. They are the longtime residents of the neighborhood.
9. He is the longtime chairman of the committee.

I believe that ‘longtime’ tends to be American use, whereas British use would be ‘long-time’.

Beeesneees,
‘I haven’t had a cigarette long.’
Is it OK?
Could I say : ‘I haven’t had a cigarette long time.’?
Thanks.

“I haven’t had a cigarette long.” is incorrect.
“I haven’t long had a cigarette.” = I had one a short time ago.

“I haven’t had a cigarette long time.” is incorrect,
“I haven’t had a cigarette for a long time.” = It is a long time since I had one.