An earthquake shook northern Pakistan on Tuesday, destroying buildings, cracking roads, killing 22 people and injuring nearly 200 more, government and police officials said.