OK, I don't know much about how CGI works, but isn't it so that every request spawns a new CGI 'process' which is terminated at the end of the request?
In that case, I don't think APC makes much sense, as the process is killed at the end of the request, which also terminates the APC cache.
When using APC is an Apache module, the APC cache is kept intact so long as the Apache process runs, meaning that data can be shared across requests.
I did find this article which might help a bit, but it looks like a lot of work, and it's possibly very outdated: FastCGI with a PHP APC Opcode Cache | Brandon's Blog
Lastly, I'm not sure about the workings of CGI, so it's quite possible that what I've just written above is total claptrap.