out of source compile