Several thousand people have gathered in Spain's northeastern port city of Barcelona to protest against what they say is Europe's "racist and uncaring" approach to migrants.

The protest, organized by the Stop Mare Nostrum and Prou Racisme groups, marched toward a meeting point next to the Mediterranean Sea "where so many migrants are perishing," spokesman Toni Borrell said.

Many participants are carrying banners saying "Refugees Welcome" and will pay homage to migrants who died at sea, Borrell, said.

Borrell said most Europeans "have at one time in history been migrants" and Saturday's protest aims to press politicians to take accept more refugees.

European Union and Turkish leaders sealed a widely-criticized pact on Friday to send thousands of asylum-seekers back to Turkey.

Borrell said "we are ashamed of our governments."