The 23-year-old mutually cancelled his deal at the Shrimps earlier this month but can train at the Championship side ahead of the move.
"Agreeing the pre-contract deal now, I get the opportunity to bed myself in before I can play again," he said.
"I think this will be a really good challenge for me."
Morecambe boss Jim Bentley had spoken about selling a player to raise funds for the Lancashire side who paid their players late at the start of November.
Despite cancelling Barkhuizen's contract at the Lancashire club, they retained his rights so Preston had to pay the compensation package.
Find all the latest football transfers on our dedicated page.
Preston North End have signed forward Tom Barkhuizen from League Two side Morecambe for a compensation fee with the deal to go through on 1 January.