Arsenal complete Chamakh signing
"He is a player we have admired for some time now and I know he will provide our squad with great quality," manager Arsene Wenger said on the club's website.
Chamakh, who played 293 games and scored 79 goals in eight years with Ligue 1 side Bordeaux, joins on a free transfer at the end of his contract with Bordeaux.
He also held talks with Liverpool and Arsenal's north London rivals Tottenham Hotspur but set his heart on playing at The Emirates having followed the club as a youngster.
"This is a dream come true and a great joy to be joining Arsenal," said Chamakh. "My goal was always to play in the Premier League and Arsenal was the choice of my heart.
"Without any hesitation, Arsenal was my preferred club. The team and history of Arsenal, they make me dream.
Arsenal did not disclose the length of the contract.
He scored 10 goals in Ligue 1 last season having netted 14 times in the previous campaign when he helped Bordeaux win the French title ending Olympique Lyon's seven-year reign.
Born and raised in France, Chamakh decided to play for the country of his parents and has played 53 times for Morocco, scoring 27 goals. He was part of the side that lost 2-1 to host nation Tunisia in the 2004 African Nations Cup final.
Wenger added: "Chamakh has proved he is a great player with his performances for Bordeaux and Morocco in recent seasons and we're all looking forward to him joining us.
"Chamakh is a striker of real quality and has all the attributes suited to come to England and do very well.
"He is also a fighter, not only a good football player, but a fighter as well. He is very good in the air and also a good team player. He is a great addition to our squad."
Chamakh will wear the number 29 shirt.
FEATURE: How will Chamakh fit in at Arsenal?