Louis Ray Ault, 53, was charged with being a fugitive from justice, possession with intent to sell and deliver marijuana and possession of drug paraphernalia.
Ault was being held in the Wake County jail Sunday under a $55,000 bond. His first court appearance was set for Monday.
The Florida Department of Law Enforcement had listed Ault an absconder. He most recently registered for a temporary address in Wake County in January but hadn't contacted authorities since, according to online Florida records.
Ault had to register as a sex offender for a 1991 conviction for attempted sexual battery a minor less than 12 years old, Florida records show. He was sentenced to 30 years in prison but released in 2003.
He also served half of a 12-year sentence for a 1981 sexual-battery conviction.