Problems with t_renderer

Hi :wave:

I have successfully installed and used acados on two computers, but I am having problems while trying to use acados on Jetson TX2 platform.

Acados installs successfully, however, the problems comes while trying to run a python example and after downloading Tera renderer. An 'ELF not found*’ problem related to t_renderer is specifically mentioned.

Here is the full error information (personal info removed):

Tera template render executable not found, while looking in path:
/home/.../include/acados/bin/t_renderer
In order to be able to render the templates, you need to download the tera renderer binaries from:
https://github.com/acados/tera_renderer/releases

Do you wish to set up Tera renderer automatically?
y/N? (press y to download tera or any key for manual installation)
y

Dowloading https://github.com/acados/tera_renderer/releases/download/v0.0.34/t_renderer-v0.0.34-linux
Successfully downloaded t_renderer.
/home/.../include/acados/bin/t_renderer: 1: /home/.../include/acados/bin/t_renderer: ELF: not found
/home/.../include/acados/bin/t_renderer: 2: /home/.../include/acados/bin/t_renderer: Syntax error: word unexpected (expecting ")")
Traceback (most recent call last):
  File "main.py", line 60, in <module>
    constraint, model, acados_solver = acados_settings(Tf, N)
  File "/home/.../acados_settings.py", line 207, in acados_settings
    acados_solver = AcadosOcpSolver(ocp, json_file="acados_ocp.json")
  File "/home/.../include/acados/interfaces/acados_template/acados_template/acados_ocp_solver.py", line 788, in __init__
    ocp_render_templates(acados_ocp, json_file)
  File "/home/.../include/acados/interfaces/acados_template/acados_template/acados_ocp_solver.py", line 621, in ocp_render_templates
    render_template(in_file, out_file, template_dir, json_path)
  File "/home.../include/acados/interfaces/acados_template/acados_template/utils.py", line 214, in render_template
    raise Exception('Rendering of {} failed! Exiting.\n'.format(in_file))
Exception: Rendering of main.in.c failed! Exiting.

Exception ignored in: <function AcadosOcpSolver.__del__ at 0x7f95c08710>
Traceback (most recent call last):
  File "/home/.../include/acados/interfaces/acados_template/acados_template/acados_ocp_solver.py", line 1454, in __del__
    model = self.acados_ocp.model
AttributeError: 'AcadosOcpSolver' object has no attribute 'acados_ocp'

Any suggestion is welcome!

Thanks for the help! :pray:
Ivana

Hi Ivana :wave:

I was just googling around a bit.

Can you try to natively compile the tera renderer binary following the instructions here?

Let me know if that works.

Cheers,
Jonathan

For reference: vesc_tool_2.00: cannot execute binary file: Exec format error - Jetson TX2 - NVIDIA Developer Forums

Hello Jonathan

Thanks for the suggestion! I have tried to to natively compile the tera renderer binary following the instructions, but there is no difference in the output.

I did some research and here is the output for the nvcc in the jetson. So ELF is installed but somehow not found.

nvcc: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, stripped

-Ivana-

Hi Ivana,

that is weird.

Just to double check:
You replaced the file <acados_root_dir>/bin/t_renderer with the one you compiled natively, i.e. in <tera_renderer_dir>/target/release/t_renderer and get the same error?

Hello Jonathan

Thank you! I compiled the binary and replaced the mentioned file and it worked.

-Ivana-

1 Like