Withers was 19-7 at James Madison with an FCS playoff appearance this season. James Madison received a first-round bye and lost to Colgate 44-38 in the second round.
Withers replaces Dennis Franchione, who retired last month after going 39-43 in five seasons with Texas State and leading the program through its transition from FCS to FBS.
Withers, 52, has spent most of his long coaching career as a college assistant, including a stint at Ohio State. Before James Madison, his one previous season as a head coach was 2011 at North Carolina. Withers took over the Tar Heels when Butch Davis was fired in July. The Tar Heels went 7-6.
Earlier Tuesday, ESPN.com's Brett McMurphy reported that TCU co-offensive coordinator Doug Meacham turned down an offer to become Texas State's coach.
Information from The Associated Press was used in this report.