More than 20,000 people have rallied in Pakistan 's largest city , Karachi , to protest cartoons of the Prophet Muhammad .