A barn fire in Perth County has left 1,800 pigs dead, officials say.

Fire crews from Milverton, Shakespeare and Sebringville were called to the fire – on Perth Road 130 near the community of Brunner – shortly before 1 p.m. Wednesday, after being alerted by a passerby.

Firefighters arrived to find smoke coming from a corner of the barn, with the structure itself partially consumed by flames.

Its construction – a steel roof and cement walls – made the flames difficult to extinguish, Perth East Fire Department deputy chief Kevin Reis said.

“We couldn’t get water at it,” he told CTV News.

A total of 22 firefighters fought the flames, with water being trucked in from Milverton.

Later in the afternoon, heavy equipment was brought in to lift the roof off the rest of the debris.

A faulty heater is believed to be to blame for the fire.

Damage is estimated at $650,000.