Undefined symbol: QProblem_init

Hi All,

I have only installed the ACADOS + python interface and am trying to run the example script (minimal_example_closed_loop.py) which gives me this error:

Traceback (most recent call last):
 File "minimal_example_closed_loop.py", line 104, in <module>
   acados_ocp_solver = AcadosOcpSolver(ocp, json_file = 'acados_ocp_' + model.name + '.json')
 File "/home/ilyas/Projects/Drones/repos/acados/interfaces/acados_template/acados_template/acados_ocp_solver.py", line 771, in __init__
   self.shared_lib = CDLL(self.shared_lib_name)
 File "/usr/lib/python3.6/ctypes/__init__.py", line 348, in __init__
   self._handle = _dlopen(self._name, mode)
OSError: /home/ilyas/Projects/Drones/repos/acados//lib/libacados.so: undefined symbol: QProblem_init
Exception ignored in: <bound method AcadosOcpSolver.__del__ of <acados_template.acados_ocp_solver.AcadosOcpSolver object at 0x7ff1cc7272b0>>
Traceback (most recent call last):
 File "/home/ilyas/Projects/Drones/repos/acados/interfaces/acados_template/acados_template/acados_ocp_solver.py", line 1408, in __del__
   model = self.acados_ocp.model
AttributeError: 'AcadosOcpSolver' object has no attribute 'acados_ocp'

All shared library paths seem to be properly set on the machine, the library is compiled with QPOASES ON. What may be causing the error?

Thanks in advance!

The problem seems to be resolved when compiling with -DHPIPM_TARGET=GENERIC -DBLASFEO_TARGET=GENERIC targets…


This seems weird to me. I don’t understand how the BLASFEO and HPIPM targets are related to this error…
Which OS are you using?


I am using Ubuntu 18.04.
I’ve taken a fix from here.