I won't go into the basics of SS7 here but here is a quick tutorial to get you started if you need help.
At this point I assume you have a A Link or two of them, some hardware including some type of interface card like a Sangoma A101. If you have the gear, I prefer to use commercial gear to get m3ua rather than a link to the PC when possible.
I normally use the CentOS distro because its easy to get, has all the components and is very stable. Main things you'll likely need in it are development tools and lksctp.
With the sangoma card you'll want to download and install the mtp2 driver. There is sample code included and instruction on getting the MTP2 layer up and running.
They first project I tackled is getting mtp2 links coming in on a DS1 as M3ua so I could write code using ip layer rather than having to worry about interfacing with hardware. Its much easier to establish a sctp link than to write code to keep up with the mtp2 api status. Its also nice to be able to multiplex and handle the MTP2 on a box and applications elsewhere. Its pretty simple to take the lksctp sample code and mtp2 layer code and develop a m3ua layer. The m3ua layer is documented well and fairly simple.