AIX flag to reduce size of shared file

I am using xlC (Version: 11.01.0000.0011).

While build i am using "-g" to have debug information in build.
there are many object files (>500) due to which resultant shared file (.so) will have huge size.

I can't reduce optimization level.
Is there any way or flag is present by using which i can reduce size of shared file (.so)?

No, but you could put them in a zip -9 and mount that. Disk is cheap, and compression is pretty nice in a CPU much faster than disk (never mind fiber and wire net remote disk). There are many file systems with compression. The fluffy stuff in -g unstripped unoptimized files compresses great. (Sometimes optimizations grow the object, like loop unrolling and subroutine inlining.)

Any stable libraries can be created without debug information.

You can trace a lot of calls using truss without -g or such. The load of being traced can be applied after the app is running. You can truss after an app is started, without source code, recompile or restart.

If all the objects need debugging information, you're stuck with it.