diff --git a/SConstruct b/SConstruct index 1074876325..3199470523 100644 --- a/SConstruct +++ b/SConstruct @@ -80,7 +80,7 @@ assert arch in ["larch64", "aarch64", "x86_64", "Darwin"] lenv = { "PATH": os.environ['PATH'], - "LD_LIBRARY_PATH": [str(Dir(f"#third_party/acados/{arch}/lib"))], + "LD_LIBRARY_PATH": [Dir(f"#third_party/acados/{arch}/lib").abspath], "PYTHONPATH": Dir("#").abspath + ':' + Dir(f"#third_party/acados").abspath, "ACADOS_SOURCE_DIR": Dir("#third_party/acados").abspath, @@ -88,7 +88,7 @@ lenv = { "TERA_PATH": Dir("#").abspath + f"/third_party/acados/{arch}/t_renderer" } -rpath = lenv["LD_LIBRARY_PATH"].copy() +rpath = [] # lenv["LD_LIBRARY_PATH"].copy() if arch == "larch64": cpppath = [ diff --git a/selfdrive/controls/lib/lateral_mpc_lib/SConscript b/selfdrive/controls/lib/lateral_mpc_lib/SConscript index 9657a0e17b..6c81e4140b 100644 --- a/selfdrive/controls/lib/lateral_mpc_lib/SConscript +++ b/selfdrive/controls/lib/lateral_mpc_lib/SConscript @@ -55,6 +55,7 @@ source_list = ['lat_mpc.py', ] lenv = env.Clone() +lenv["LINKFLAGS"] += [f'-Wl,-rpath,\\$$ORIGIN/../../../../../third_party/acados/{arch}/lib'] lenv.Clean(generated_files, Dir(gen)) generated_lat = lenv.Command(generated_files, @@ -78,8 +79,9 @@ libacados_ocp_solver_pxd = File(f'{gen}/acados_solver.pxd') libacados_ocp_solver_c = File(f'{gen}/acados_ocp_solver_pyx.c') lenv2 = envCython.Clone() -lenv2["LINKFLAGS"] += ['-Wl,-rpath,\\$$ORIGIN'] -lenv2["LINKFLAGS"] += [f'-Wl,-rpath,\\$$ORIGIN/{gen}'] +lenv2["LIBPATH"] += [lib_solver[0].dir.abspath] +# lenv2["LINKFLAGS"] += [f'-Wl,-rpath,\\$$ORIGIN/../../../../../third_party/acados/{arch}/lib'] +lenv2["LINKFLAGS"] += [f'-Wl,-rpath,\\$$ORIGIN'] lenv2.Command(libacados_ocp_solver_c, [acados_ocp_solver_pyx, acados_ocp_solver_common, libacados_ocp_solver_pxd], f'cython' + \ diff --git a/selfdrive/controls/lib/longitudinal_mpc_lib/SConscript b/selfdrive/controls/lib/longitudinal_mpc_lib/SConscript index 8d3bf2fe10..aa5fd9017a 100644 --- a/selfdrive/controls/lib/longitudinal_mpc_lib/SConscript +++ b/selfdrive/controls/lib/longitudinal_mpc_lib/SConscript @@ -61,13 +61,14 @@ source_list = ['long_mpc.py', ] lenv = env.Clone() +lenv["LINKFLAGS"] += [f'-Wl,-rpath,\\$$ORIGIN/../../../../../third_party/acados/{arch}/lib'] lenv.Clean(generated_files, Dir(gen)) - generated_long = lenv.Command(generated_files, source_list, f"cd {Dir('.').abspath} && python3 long_mpc.py") lenv.Depends(generated_long, [msgq_python, common_python, opendbc_python, pandad_python]) + lenv["CFLAGS"].append("-DACADOS_WITH_QPOASES") lenv["CXXFLAGS"].append("-DACADOS_WITH_QPOASES") lenv["CCFLAGS"].append("-Wno-unused") @@ -86,8 +87,9 @@ libacados_ocp_solver_pxd = File(f'{gen}/acados_solver.pxd') libacados_ocp_solver_c = File(f'{gen}/acados_ocp_solver_pyx.c') lenv2 = envCython.Clone() -lenv2["LINKFLAGS"] += ['-Wl,-rpath,\\$$ORIGIN'] -lenv2["LINKFLAGS"] += [f'-Wl,-rpath,\\$$ORIGIN/{gen}'] +lenv2["LIBPATH"] += [lib_solver[0].dir.abspath] +# lenv2["LINKFLAGS"] += [f'-Wl,-rpath,\\$$ORIGIN/../../../../../third_party/acados/{arch}/lib'] +lenv2["LINKFLAGS"] += [f'-Wl,-rpath,\\$$ORIGIN'] lenv2.Command(libacados_ocp_solver_c, [acados_ocp_solver_pyx, acados_ocp_solver_common, libacados_ocp_solver_pxd], f'cython' + \ @@ -95,6 +97,7 @@ lenv2.Command(libacados_ocp_solver_c, f' -I {libacados_ocp_solver_pxd.get_dir().get_labspath()}' + \ f' -I {acados_ocp_solver_common.get_dir().get_labspath()}' + \ f' {acados_ocp_solver_pyx.get_labspath()}') -lib_cython = lenv2.Program(f'{gen}/acados_ocp_solver_pyx.so', [libacados_ocp_solver_c]) +# lib_cython = lenv2.Program(f'{gen}/acados_ocp_solver_pyx.so', [libacados_ocp_solver_c]) +lib_cython = lenv2.Program(f'{gen}/acados_ocp_solver_pyx.so', [libacados_ocp_solver_c], LIBS=['acados_ocp_solver_long']) lenv2.Depends(lib_cython, lib_solver) lenv2.Depends(libacados_ocp_solver_c, np_version)