I've just recently had all sorts of problems with perlbrew on Solaris (see Trouble getting perlbrew working on Solaris machine. IIRC, the shell script curl downloads and is passed to bash creates the file you mention in /tmp. If you simple download the file with curl and examine it (instead of passing it to bash) it is fairly straight forward. I'd guess you don't have some permission on /tmp. Try setting TMPDIR to some dir you have permissions on before passing the curl output to bash.
All the shell script really does is download https://raw.github.com/gugod/App-perlbrew/master/perlbrew and run it.