You get this error because, well, exonerate "Cannot perform heuristic alignment using non-local model" :). From the exonarate man page :
exonerate is a general tool for sequence comparison.
It uses the C4 dynamic programming library. It is designed to be both general and fast. It can produce either gapped or ungapped alignments, according to
a variety of different alignment models. The C4 library allows sequence alignment using a reduced space full dynamic programming implementation, but also
allows automated generation of heuristics from the alignment models, using bounded sparse dynamic programming, so that these alignments may also be rapidly
generated. Alignments generated using these heuristics will represent a valid path through the alignment model, yet (unlike the exhaustive alignments),
the results are not guaranteed to be optimal.
-E | --exhaustive <boolean>
Specify whether or not exhaustive alignment should be used. By default, this is FALSE, and alignment heuristics will be used. If it is set to
TRUE, an exhaustive alignment will be calculated. This requires quadratic time, and will be much, much slower, but will provide the optimal result
for the given model.
So, by default
exonerate uses heuristics to speed up the alignment. However, heuristics cannot be used when calculating a global alignment since the entire sequences need to be aligned. So,
exonerate complains in a surpsisingly informative manner telling you exactly what is wrong: It cannot perform heuristic alignment using non-local model. It works when you use the
-E switch because that disables the heuristics.
Now why you get no alignment I cannot tell you unless you post the actual sequences (and commands) that you used.
Why are you using exonerate for this? Why not a _bona fide_ alignment program like mafft or t_coffee or any of the others available?
I have sent a message via the request help link above to the contact info listed for the tool