recent llvm-gcc (available on Debian and other fine platforms) should have
blocks support built-in I believe. Clang as well. To actually _use_ blocks,
you need the BlocksRuntime shared library, available as part of compiler-rt 
(which builds and runs on Linux as of last week). Unfortunately I don't think
its packaged anywhere yet.