The three-loop splitting functions in QCD: the non-singlet case