A building in a northern Peruvian town was set on fire on Friday in a protest against China National Petroleum Corp that devolved into clashes between police and demonstrators who want the company to make pledges to help the local community, an industry source said.