Mira, yo uso Smarty bajo linux, y siempre uso un archivo de configuracion de Smarty similar a este:
Código PHP:
<?php
require('/home/user/Smarty/libs/Smarty.class.php');
$template = new Smarty();
$template->template_dir = '/home/user/public_html/algo/template';
$template->compile_dir = '/home/user/Smarty/algo/templates_c';
$template->cache_dir = '/home/user/Smarty/algo/cache';
$template->config_dir = '/home/user/Smarty/algo/configs';
?>
Y con eso me va de maravilla, supongo que podrias hacer algo asi si es que no lo tienes.. por lo que veo, el $compile_dir que usas es /tmp, pero te recomendaria que vieras si la ruta en realidad es correcta, y si ese directorio esta creado en donde lo especificas..