The -I option tells gcc where to look for header files. So -I /usr/local/include/chipmunk will add it to the search path so that #include <chipmunk.h> will be found.
The -L option tells the linker where to look for libraries specified by -l i.e. where to look for libchipmunk.a if you give it -lchipmunk.
You can have mulitple -I and -L options to add lots of paths.
LD_LIBRARY_PATH is the env var for the path to look for dynamically loaded libraries i.e. the linker can take a static library (.a) and put the code into your program at link time. Or it can take a dynamic library (.so) and look for it when your program runs.
You want to link statically since otherwise anyone running your program would need to have the library installed (or you would need to give them a copy and it be placed somewhere in the search path).
I actually don't install chipmunk into /usr/local and instead just have it as a library compiled as part of my projects. The reason I do this is it makes it easier to add debug (to find out when I've screwed up not Chipmunk
), but if you're not needed to step through the code or debug it a lot then installing it is the way to go.
Hopefully of some help.