It seems that, the work of the LLVM interpret (lli) is just to interpret the IR code.
For external functions, as well as most library functions, the interpret cannot interpret them, since there is no source IR code for these functions.
So, you may try:
- Compile the source code external functions together to obtain their IR code; or,
- Skip the external functions via comment the “LLVM ERROR” reporting code to avoid early termination. But the simulation result is not correct since the work of external functions is skipped.