Você já tentou unoconv
?
Eu fiz, e parece funcionar. Foi o que eu fiz (depois de pesquisar bastante :):
- instalei o unoconv (tive o Libre Office instalado)
- Iniciado no console (nenhum servidor X em execução)
-
Iniciado o escritório no modo sem cabeça com este comando:
/usr/lib/libreoffice/program/soffice.bin -headless -nofirststartwizard -accept="soquete, host = localhost, porta = 8100; urp; StarOffice.Service" &
Depois disso, o simples unoconv document.doc
converteu o document.doc para o document.pdf (o pdf é o formato de saída padrão).