It appears that Brook+ is not working good with GCC 4.3+ (apparently this is known since late 2008). I had the same problem explained in this thread:
http://www.gpgpu.org/forums/viewtopic.php?p=20719
/usr/local/brook-1.4.1/sdk/include/brook/CPU/brtvector.hpp:322: error: explicit template specialization cannot have a storage class
/usr/local/brook-1.4.1/sdk/include/brook/CPU/brtvector.hpp:323: error: explicit template specialization cannot have a storage class
/usr/local/brook-1.4.1/sdk/include/brook/CPU/brtvector.hpp:324: error: explicit template specialization cannot have a storage class
/usr/local/brook-1.4.1/sdk/include/brook/CPU/brtvector.hpp:325: error: explicit template specialization cannot have a storage class
/usr/local/brook-1.4.1/sdk/include/brook/CPU/brtvector.hpp:326: error: explicit template specialization cannot have a storage class
/usr/local/brook-1.4.1/sdk/include/brook/CPU/brtvector.hpp:327: error: explicit template specialization cannot have a storage class
/usr/local/brook-1.4.1/sdk/include/brook/CPU/brtvector.hpp:328: error: explicit template specialization cannot have a storage class
/usr/local/brook-1.4.1/sdk/include/brook/CPU/brtvector.hpp:329: error: explicit template specialization cannot have a storage class
/usr/local/brook-1.4.1/sdk/include/brook/CPU/brtvector.hpp:330: error: explicit template specialization cannot have a storage class