Army takes a long time to get a prisoner (7)
I believe the answer is:
hostage
'a prisoner' is the definition.
(someone taken as a prisoner)
'army takes a long time' is the wordplay.
'army' becomes 'host' (host is a kind of army).
'takes' is a charade indicator (letters next to each other).
'a long time' becomes 'age' (an age is a period of time).
'host'+'age'='HOSTAGE'
'to get' acts as a link.
(Other definitions for hostage that I've seen before include "Detainee - gash toe (anag)" , "One held captive" , "One held for money" , "Captive held for ransom" , "Person held by kidnapper for ransom" .)