If you don't want to learn the ins and outs of XS, Inline::C is a pretty good place to start. It handles most of the magic for you so you can concentrate on writing relatively simple wrappers for your C functions.
If you don't want to learn the ins and outs of XS, Inline::C is a pretty good place to start.
Since he mentions C++, also Inline::CPP. And another interesting module which I discovered quite recently is InlineX::XS which "Auto-converts Inline::C based modules to XS".