21 people have been killed and a further 20 injured in a fire in a hostel in northwest Poland.

Some 77 people were staying in the three-storey shelter for homeless and poor families in Kamieniec Pomorskie, which burned to the ground overnight.

One of those hurt had serious injuries. An eight-month-old infant was among the victims, local television reported.

‘There were ladders, but they reached only to the first floor,’ witness Dariusz Janyszko said.

‘I yelled to my sister on the second floor “Jump, I will catch you” but she didn't. Then it was too late.’

Television pictures showed huge flames coming from the building's windows reaching high into the sky above the roof.

Survivors said they had to jump out of windows to escape the flames.

Prime Minister Donald Tusk is on his way to the scene of the fire, government spokesman Pawel Gras said.

The cause of the blaze has not yet been determined.