The 28-year-old, who also played for Bristol Rovers, has signed on at Dens Park following a successful trial period over the last few weeks.
Manager Paul Hartley told the club's official website: "We are delighted to get him signed up. I know him well from playing alongside him.
"He hasn't really played as a main striker for a few years but we see him as a centre-forward. He will give us good competition, good experience and a good goal return at this level. He's impressed us over the few weeks we've had him in training."
Clarkson has been capped twice for Scotland, scoring on his international debut in a friendly against Czech Republic in 2008.