I'd recommend trying gsmlib on Linux:

http://www.pxh.de/fs/gsmlib/

It's quite mature and gets you going very quickly. At least the M30 seems to work pretty fine with it.