The 29-year-old failed to make a single Premier League appearance for the Gunners last season and now becomes Ian Holloway's seventh signing of the summer on a one-year deal.
The striker becomes the newly promoted side's seventh arrival of the summer following Jose Campana, Stephen Dobbie, Dwight Gayle, Elliot Grandin, Kevin Phillips and Jerome Thomas.
Chamakh, who willl wear the No. 29 shirt, had been out of favor at the Emirates Stadium and joined West Ham on a six-month loan in January but failed to score in three appearances.
The Moroccan will now compete with the likes of fellow new signings Phillips and Dobbie for first-team opportunities this season. The 29-year-old could make his Palace debut against Arsenal's local rival Tottenham in the club's Premier League season opener on Aug. 18.