Have your friend wire you the money. Easiest and least loss of value. Ask your bank where you have your checking account for the SWIFT account code (e.g. Chase in Detroit is CHASUS33) and give that to your friend with your checking account #. He pays 10-20 EUR for the wire transfer in his bank.
Another option is a Deutsche Bank Sparcard with which you can pick up cash for no extra charge (converted at the days exchange rate) at Bank of America ATMs in the US, Scotiabank in Canada, BNP Paribas in France. The reverse works too for BoA checking account ATM cards on DB, Scotiabank and BNP ATMs. I have both the BoA checking account and the DB spar card and it lessens the pain of the sad USD/EUR exchange rate.