Building Error using ConfigurationDesk for MicroAutoBox III

Hi :wave:

I am using Matlab 2023b together with the dSPACE release 2024A and a MicroAutoBox III. I followed the steps for dSPACE DS1401 and DS1403 in the ACADOS Embedded Workflow (with some modifications mentioned here: Compiling Acados for Microautobox 3).

I also tested the workflow with the simulink_model_closed_loop.slx using the minimal_example_ocp.m and it works fine.

However, when I try the same steps with my own ocp_model the process leads to the following error in configurationDesk:

Compiling "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_sim_solver_sfunction_HyFCD_V1.c" ...
acados_solver_sfunction_HyFCD_V2.c:38:10: fatal error: acados_c/sim_interface.h: No such file or directory
   38 | #include "acados_c/sim_interface.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
acados_sim_solver_sfunction_HyFCD_V1.c:38:10: fatal error: acados_c/ocp_nlp_interface.h: No such file or directory
   38 | #include "acados_c/ocp_nlp_interface.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_sim_solver_sfunction_HyFCD_V1.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2\MakeCompile.err.
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_solver_sfunction_HyFCD_V2.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2\MakeCompile.err.
acados_sim_solver_HyFCD_V2.c:35:10: fatal error: acados_c/external_function_interface.h: No such file or directory
   35 | #include "acados_c/external_function_interface.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_sim_solver_HyFCD_V2.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2\MakeCompile.err.
Compilation was not successful. (1)
### Error detected while trying to execute C:\Program Files\dSPACE ConfigurationDesk 2024-A (24.1)\DS1403\bin\dsmake.exe in C:/Users/Kn/AppData/Local/Temp/dSPACE/CfgDesk/AppCache/3/Build/dSPACE_HyFCD_MPC_V2/Compile/dSPACE_HyFCD_MPC_V2.
### Error Message: Making "dSPACE_HyFCD_MPC_V2\dSPACE_HyFCD_MPC_V2.mk" failed
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2_em.err.
Compilation was not successful. (1)
The make phase failed for the following application process: dSPACE_HyFCD_MPC_V2.
==== Build Summary =============================================================
Application process                      Build time           Status
--------------------------------------------------------------------------------
dSPACE_HyFCD_MPC_V2                      00:00:05             Failed
--------------------------------------------------------------------------------
TOTAL                                    00:00:01             FAILED
--------------------------------------------------------------------------------
==== Build process aborted =====================================================

The problem seems to be that some files or dictionaries related to acados_c are not found, like acados_c/sim_interface.h or acados_c/ocp_nlp_interface.h.

I have tried to add all header files in …\acados\buildDS1403\install\include\acados_c to include headers in the custom code options in Simulink, as well as putting the complete folder (…\acados\buildDS1403\install\include\acados_c) into include directories in the custom code options in Simulink. But that did not fix the error.

Thanks for the support.

Jannis

Hi!
Are you using relative paths or absolute one? I use absolute one.
Have you put all the include directories?

In my case they are:
\BuildDS6001\install\include
\BuildDS6001\install\include\blasfeo\include
\BuildDS6001\install\include\hpipm\include
\BuildDS6001\install\include\acados
\BuildDS6001\install\include\acados\dense_qp
BuildDS6001\install\include\acados\ocp_nlp
\BuildDS6001\install\include\acados\ocp_qp
\BuildDS6001\install\include\acados\sim
\BuildDS6001\install\include\acados\utils
\BuildDS6001\install\include\acados_c

where the BuildDS6001 folder is the one in which I crosscompiled acados for dSpace.

I hope it can help you.

Samuele

Hi Samuele,

thank you for your quick response. Similar to you I am using absolute path. I have tried to add all the directories in Simulink.

But I am still getting the same error

acados_solver_HyFCD_V1.c:37:10: fatal error: acados_c/ocp_nlp_interface.h: No such file or directory
acados_sim_solver_HyFCD_V1.c:35:10: fatal error: acados_c/external_function_interface.h: No such file or directory
   37 | #include "acados_c/ocp_nlp_interface.h"
   35 | #include "acados_c/external_function_interface.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
compilation terminated.
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_sim_solver_HyFCD_V1.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\0\Build\dSPACE_HyFCD_MPC_V1\Compile\dSPACE_HyFCD_MPC_V1\MakeCompile.err.
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_solver_HyFCD_V1.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\0\Build\dSPACE_HyFCD_MPC_V1\Compile\dSPACE_HyFCD_MPC_V1\MakeCompile.err.
acados_solver_sfunction_HyFCD_V1.c:38:10: fatal error: acados_c/sim_interface.h: No such file or directory
   38 | #include "acados_c/sim_interface.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
acados_sim_solver_sfunction_HyFCD_V1.c:38:10: fatal error: acados_c/ocp_nlp_interface.h: No such file or directory
   38 | #include "acados_c/ocp_nlp_interface.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_solver_sfunction_HyFCD_V1.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\0\Build\dSPACE_HyFCD_MPC_V1\Compile\dSPACE_HyFCD_MPC_V1\MakeCompile.err.
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_sim_solver_sfunction_HyFCD_V1.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\0\Build\dSPACE_HyFCD_MPC_V1\Compile\dSPACE_HyFCD_MPC_V1\MakeCompile.err.
Compilation was not successful. (1)
### Error detected while trying to execute C:\Program Files\dSPACE ConfigurationDesk 2024-A (24.1)\DS1403\bin\dsmake.exe in C:/Users/Kn/AppData/Local/Temp/dSPACE/CfgDesk/AppCache/0/Build/dSPACE_HyFCD_MPC_V1/Compile/dSPACE_HyFCD_MPC_V1.
### Error Message: Making "dSPACE_HyFCD_MPC_V1\dSPACE_HyFCD_MPC_V1.mk" failed
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\0\Build\dSPACE_HyFCD_MPC_V1\Compile\dSPACE_HyFCD_MPC_V1_em.err.
Compilation was not successful. (1)
The make phase failed for the following application process: dSPACE_HyFCD_MPC_V1.
==== Build Summary =============================================================
Application process                      Build time           Status
--------------------------------------------------------------------------------
dSPACE_HyFCD_MPC_V1                      00:00:41             Failed
--------------------------------------------------------------------------------
TOTAL                                    00:00:02             FAILED
--------------------------------------------------------------------------------
==== Build process aborted =====================================================

I don’t know why it it not able to find these header files.

Thank you

Jannis

Have you tried to generate the code directly from simulink? CTRL + B command.
Also see the files in the path “For more information, refer to…”

Samuele

Hi Samuele,

I have solved the error with the paths. I had a very stupid miskate in them. However, now a new error appears, which i don’t quite understand:

Compiling "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_sim_solver_HyFCD_V2.c" ...
acados_sim_solver_HyFCD_V2.c: In function 'HyFCD_V2_acados_sim_create':
acados_sim_solver_HyFCD_V2.c:78:5: error: unknown type name 'external_function_opts'; did you mean 'external_function_casadi'?
   78 |     external_function_opts ext_fun_opts;
      |     ^~~~~~~~~~~~~~~~~~~~~~
      |     external_function_casadi
acados_sim_solver_HyFCD_V2.c:79:5: error: implicit declaration of function 'external_function_opts_set_to_default' [-Werror=implicit-function-declaration]
   79 |     external_function_opts_set_to_default(&ext_fun_opts);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_sim_solver_HyFCD_V2.c:80:17: error: request for member 'external_workspace' in something not a structure or union
   80 |     ext_fun_opts.external_workspace = false;
      |                 ^
acados_sim_solver_HyFCD_V2.c:94:5: error: too many arguments to function 'external_function_param_casadi_create'
   94 |     external_function_param_casadi_create(capsule->sim_expl_vde_forw, np, &ext_fun_opts);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from acados_sim_solver_HyFCD_V2.c:35:
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:74:6: note: declared here
   74 | void external_function_param_casadi_create(external_function_param_casadi *fun, int np);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_sim_solver_HyFCD_V2.c:102:5: error: too many arguments to function 'external_function_param_casadi_create'
  102 |     external_function_param_casadi_create(capsule->sim_vde_adj_casadi, np, &ext_fun_opts);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:74:6: note: declared here
   74 | void external_function_param_casadi_create(external_function_param_casadi *fun, int np);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_sim_solver_HyFCD_V2.c:110:5: error: too many arguments to function 'external_function_param_casadi_create'
  110 |     external_function_param_casadi_create(capsule->sim_expl_ode_fun_casadi, np, &ext_fun_opts);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:74:6: note: declared here
   74 | void external_function_param_casadi_create(external_function_param_casadi *fun, int np);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_sim_solver_HyFCD_V2.c:167:39: error: too many arguments to function 'sim_solver_create'
  167 |     sim_solver *HyFCD_V2_sim_solver = sim_solver_create(HyFCD_V2_sim_config,
      |                                       ^~~~~~~~~~~~~~~~~
In file included from acados_sim_solver_HyFCD_V2.c:36:
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/sim_interface.h:123:34: note: declared here
  123 | ACADOS_SYMBOL_EXPORT sim_solver *sim_solver_create(sim_config *config, void *dims, void *opts_);
      |                                  ^~~~~~~~~~~~~~~~~
cc1.exe: some warnings being treated as errors
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_sim_solver_HyFCD_V2.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2\MakeCompile.err.
acados_solver_sfunction_HyFCD_V2.c: In function 'mdlOutputs':
acados_solver_sfunction_HyFCD_V2.c:281:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  281 |     ocp_nlp_get(capsule->nlp_solver, "time_tot", (void *) buffer);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
In file included from acados_solver_HyFCD_V2.h:36,
                 from acados_solver_sfunction_HyFCD_V2.c:42:
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:281:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  281 |     ocp_nlp_get(capsule->nlp_solver, "time_tot", (void *) buffer);
      |                                      ^~~~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                                               ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:281:5: error: too few arguments to function 'ocp_nlp_get'
  281 |     ocp_nlp_get(capsule->nlp_solver, "time_tot", (void *) buffer);
      |     ^~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:27: note: declared here
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                           ^~~~~~~~~~~
acados_solver_sfunction_HyFCD_V2.c:300:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  300 |     ocp_nlp_get(capsule->nlp_solver, "cost_value", (void *) out_ptr);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:300:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  300 |     ocp_nlp_get(capsule->nlp_solver, "cost_value", (void *) out_ptr);
      |                                      ^~~~~~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                                               ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:300:5: error: too few arguments to function 'ocp_nlp_get'
  300 |     ocp_nlp_get(capsule->nlp_solver, "cost_value", (void *) out_ptr);
      |     ^~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:27: note: declared here
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                           ^~~~~~~~~~~
acados_solver_sfunction_HyFCD_V2.c:309:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  309 |     ocp_nlp_get(capsule->nlp_solver, "sqp_iter", (void *) &tmp_int);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:309:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  309 |     ocp_nlp_get(capsule->nlp_solver, "sqp_iter", (void *) &tmp_int);
      |                                      ^~~~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                                               ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:309:5: error: too few arguments to function 'ocp_nlp_get'
  309 |     ocp_nlp_get(capsule->nlp_solver, "sqp_iter", (void *) &tmp_int);
      |     ^~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:27: note: declared here
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                           ^~~~~~~~~~~
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_solver_sfunction_HyFCD_V2.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2\MakeCompile.err.
acados_solver_HyFCD_V2.c: In function 'HyFCD_V2_acados_create_setup_dimensions':
acados_solver_HyFCD_V2.c:280:5: error: implicit declaration of function 'ocp_nlp_dims_set_global'; did you mean 'ocp_nlp_dims_set_cost'? [-Werror=implicit-function-declaration]
  280 |     ocp_nlp_dims_set_global(nlp_config, nlp_dims, "np_global", 0);
      |     ^~~~~~~~~~~~~~~~~~~~~~~
      |     ocp_nlp_dims_set_cost
acados_solver_HyFCD_V2.c: In function 'HyFCD_V2_acados_create_setup_functions':
acados_solver_HyFCD_V2.c:331:5: error: unknown type name 'external_function_opts'; did you mean 'external_function_casadi'?
  331 |     external_function_opts ext_fun_opts;
      |     ^~~~~~~~~~~~~~~~~~~~~~
      |     external_function_casadi
acados_solver_HyFCD_V2.c:332:5: error: implicit declaration of function 'external_function_opts_set_to_default' [-Werror=implicit-function-declaration]
  332 |     external_function_opts_set_to_default(&ext_fun_opts);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:335:17: error: request for member 'external_workspace' in something not a structure or union
  335 |     ext_fun_opts.external_workspace = true;
      |                 ^
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:339:9: note: in expansion of macro 'MAP_CASADI_FNC'
  339 |         MAP_CASADI_FNC(nl_constr_h_fun_jac[i], HyFCD_V2_constr_h_fun_jac_uxt_zt);
      |         ^~~~~~~~~~~~~~
In file included from acados_solver_HyFCD_V2.c:38:
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:343:9: note: in expansion of macro 'MAP_CASADI_FNC'
  343 |         MAP_CASADI_FNC(nl_constr_h_fun[i], HyFCD_V2_constr_h_fun);
      |         ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:348:5: note: in expansion of macro 'MAP_CASADI_FNC'
  348 |     MAP_CASADI_FNC(ext_cost_0_fun, HyFCD_V2_cost_ext_cost_0_fun);
      |     ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:349:5: note: in expansion of macro 'MAP_CASADI_FNC'
  349 |     MAP_CASADI_FNC(ext_cost_0_fun_jac, HyFCD_V2_cost_ext_cost_0_fun_jac);
      |     ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:350:5: note: in expansion of macro 'MAP_CASADI_FNC'
  350 |     MAP_CASADI_FNC(ext_cost_0_fun_jac_hess, HyFCD_V2_cost_ext_cost_0_fun_jac_hess);
      |     ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:362:9: note: in expansion of macro 'MAP_CASADI_FNC'
  362 |         MAP_CASADI_FNC(expl_vde_forw[i], HyFCD_V2_expl_vde_forw);
      |         ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:367:9: note: in expansion of macro 'MAP_CASADI_FNC'
  367 |         MAP_CASADI_FNC(expl_ode_fun[i], HyFCD_V2_expl_ode_fun);
      |         ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:372:9: note: in expansion of macro 'MAP_CASADI_FNC'
  372 |         MAP_CASADI_FNC(expl_vde_adj[i], HyFCD_V2_expl_vde_adj);
      |         ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:380:9: note: in expansion of macro 'MAP_CASADI_FNC'
  380 |         MAP_CASADI_FNC(ext_cost_fun[i], HyFCD_V2_cost_ext_cost_fun);
      |         ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:386:9: note: in expansion of macro 'MAP_CASADI_FNC'
  386 |         MAP_CASADI_FNC(ext_cost_fun_jac[i], HyFCD_V2_cost_ext_cost_fun_jac);
      |         ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:392:9: note: in expansion of macro 'MAP_CASADI_FNC'
  392 |         MAP_CASADI_FNC(ext_cost_fun_jac_hess[i], HyFCD_V2_cost_ext_cost_fun_jac_hess);
      |         ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:399:5: note: in expansion of macro 'MAP_CASADI_FNC'
  399 |     MAP_CASADI_FNC(ext_cost_e_fun, HyFCD_V2_cost_ext_cost_e_fun);
      |     ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:402:5: note: in expansion of macro 'MAP_CASADI_FNC'
  402 |     MAP_CASADI_FNC(ext_cost_e_fun_jac, HyFCD_V2_cost_ext_cost_e_fun_jac);
      |     ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:405:5: note: in expansion of macro 'MAP_CASADI_FNC'
  405 |     MAP_CASADI_FNC(ext_cost_e_fun_jac_hess, HyFCD_V2_cost_ext_cost_e_fun_jac_hess);
      |     ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c: In function 'HyFCD_V2_acados_create_with_discretization':
acados_solver_HyFCD_V2.c:897:27: error: too many arguments to function 'ocp_nlp_solver_create'
  897 |     capsule->nlp_solver = ocp_nlp_solver_create(capsule->nlp_config, capsule->nlp_dims, capsule->nlp_opts, capsule->nlp_in);
      |                           ^~~~~~~~~~~~~~~~~~~~~
In file included from acados_solver_HyFCD_V2.c:37:
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:369:38: note: declared here
  369 | ACADOS_SYMBOL_EXPORT ocp_nlp_solver *ocp_nlp_solver_create(ocp_nlp_config *config, ocp_nlp_dims *dims, void *opts_);
      |                                      ^~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c: In function 'HyFCD_V2_acados_print_stats':
acados_solver_HyFCD_V2.c:1080:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1080 |     ocp_nlp_get(capsule->nlp_solver, "nlp_iter", &nlp_iter);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_HyFCD_V2.c:1080:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1080 |     ocp_nlp_get(capsule->nlp_solver, "nlp_iter", &nlp_iter);
      |                                      ^~~~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
.
.
.
cc1.exe: some warnings being treated as errors
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_solver_HyFCD_V2.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2\MakeCompile.err.
Compilation was not successful. (1)
### Error detected while trying to execute C:\Program Files\dSPACE ConfigurationDesk 2024-A (24.1)\DS1403\bin\dsmake.exe in C:/Users/Kn/AppData/Local/Temp/dSPACE/CfgDesk/AppCache/3/Build/dSPACE_HyFCD_MPC_V2/Compile/dSPACE_HyFCD_MPC_V2.
### Error Message: Making "dSPACE_HyFCD_MPC_V2\dSPACE_HyFCD_MPC_V2.mk" failed
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2_em.err.
Compilation was not successful. (1)

Thanks

Jannis

Have you added all the .c files generated in the c_generated_code folder and subfolders? (the _constraints, _model, etc).

Samuele

I have added all files that are mentioned in make_sfun.m and make_sfun_sim.m, except those with “sfunction” in the name and also rechecked all the paths. They are correct.

The error that I got is somehow related to acados_solver_sfunction…c, because as seen in the build window below it throws an error when compiling this file. The error has also something to do with the external_function.

Compiling "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_solver_sfunction_HyFCD_V2.c" ...
acados_sim_solver_HyFCD_V2.c: In function 'HyFCD_V2_acados_sim_create':
acados_sim_solver_HyFCD_V2.c:78:5: error: unknown type name 'external_function_opts'; did you mean 'external_function_casadi'?
   78 |     external_function_opts ext_fun_opts;
      |     ^~~~~~~~~~~~~~~~~~~~~~
      |     external_function_casadi
acados_solver_HyFCD_V2.c: In function 'HyFCD_V2_acados_create_setup_dimensions':
acados_solver_HyFCD_V2.c:280:5: error: implicit declaration of function 'ocp_nlp_dims_set_global'; did you mean 'ocp_nlp_dims_set_cost'? [-Werror=implicit-function-declaration]
  280 |     ocp_nlp_dims_set_global(nlp_config, nlp_dims, "np_global", 0);
      |     ^~~~~~~~~~~~~~~~~~~~~~~
      |     ocp_nlp_dims_set_cost
acados_solver_HyFCD_V2.c: In function 'HyFCD_V2_acados_create_setup_functions':
acados_solver_HyFCD_V2.c:331:5: error: unknown type name 'external_function_opts'; did you mean 'external_function_casadi'?
  331 |     external_function_opts ext_fun_opts;
      |     ^~~~~~~~~~~~~~~~~~~~~~
      |     external_function_casadi
acados_sim_solver_HyFCD_V2.c:79:5: error: implicit declaration of function 'external_function_opts_set_to_default' [-Werror=implicit-function-declaration]
   79 |     external_function_opts_set_to_default(&ext_fun_opts);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_sim_solver_HyFCD_V2.c:80:17: error: request for member 'external_workspace' in something not a structure or union
   80 |     ext_fun_opts.external_workspace = false;
      |                 ^
acados_sim_solver_HyFCD_V2.c:94:5: error: too many arguments to function 'external_function_param_casadi_create'
   94 |     external_function_param_casadi_create(capsule->sim_expl_vde_forw, np, &ext_fun_opts);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from acados_sim_solver_HyFCD_V2.c:35:
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:74:6: note: declared here
   74 | void external_function_param_casadi_create(external_function_param_casadi *fun, int np);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_sim_solver_HyFCD_V2.c:102:5: error: too many arguments to function 'external_function_param_casadi_create'
  102 |     external_function_param_casadi_create(capsule->sim_vde_adj_casadi, np, &ext_fun_opts);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:74:6: note: declared here
   74 | void external_function_param_casadi_create(external_function_param_casadi *fun, int np);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_sim_solver_HyFCD_V2.c:110:5: error: too many arguments to function 'external_function_param_casadi_create'
  110 |     external_function_param_casadi_create(capsule->sim_expl_ode_fun_casadi, np, &ext_fun_opts);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:74:6: note: declared here
   74 | void external_function_param_casadi_create(external_function_param_casadi *fun, int np);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_sim_solver_HyFCD_V2.c:167:39: error: too many arguments to function 'sim_solver_create'
  167 |     sim_solver *HyFCD_V2_sim_solver = sim_solver_create(HyFCD_V2_sim_config,
      |                                       ^~~~~~~~~~~~~~~~~
In file included from acados_sim_solver_HyFCD_V2.c:36:
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/sim_interface.h:123:34: note: declared here
  123 | ACADOS_SYMBOL_EXPORT sim_solver *sim_solver_create(sim_config *config, void *dims, void *opts_);
      |                                  ^~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:332:5: error: implicit declaration of function 'external_function_opts_set_to_default' [-Werror=implicit-function-declaration]
  332 |     external_function_opts_set_to_default(&ext_fun_opts);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:335:17: error: request for member 'external_workspace' in something not a structure or union
  335 |     ext_fun_opts.external_workspace = true;
      |                 ^
cc1.exe: some warnings being treated as errors
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:339:9: note: in expansion of macro 'MAP_CASADI_FNC'
  339 |         MAP_CASADI_FNC(nl_constr_h_fun_jac[i], HyFCD_V2_constr_h_fun_jac_uxt_zt);
      |         ^~~~~~~~~~~~~~
In file included from acados_solver_HyFCD_V2.c:38:
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:343:9: note: in expansion of macro 'MAP_CASADI_FNC'
  343 |         MAP_CASADI_FNC(nl_constr_h_fun[i], HyFCD_V2_constr_h_fun);
      |         ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:348:5: note: in expansion of macro 'MAP_CASADI_FNC'
  348 |     MAP_CASADI_FNC(ext_cost_0_fun, HyFCD_V2_cost_ext_cost_0_fun);
      |     ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:349:5: note: in expansion of macro 'MAP_CASADI_FNC'
  349 |     MAP_CASADI_FNC(ext_cost_0_fun_jac, HyFCD_V2_cost_ext_cost_0_fun_jac);
      |     ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:350:5: note: in expansion of macro 'MAP_CASADI_FNC'
  350 |     MAP_CASADI_FNC(ext_cost_0_fun_jac_hess, HyFCD_V2_cost_ext_cost_0_fun_jac_hess);
      |     ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:362:9: note: in expansion of macro 'MAP_CASADI_FNC'
  362 |         MAP_CASADI_FNC(expl_vde_forw[i], HyFCD_V2_expl_vde_forw);
      |         ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:367:9: note: in expansion of macro 'MAP_CASADI_FNC'
  367 |         MAP_CASADI_FNC(expl_ode_fun[i], HyFCD_V2_expl_ode_fun);
      |         ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:328:9: error: too many arguments to function 'external_function_external_param_casadi_create'
  328 |         external_function_external_param_casadi_create(&capsule->__CAPSULE_FNC__, &ext_fun_opts); \
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c:372:9: note: in expansion of macro 'MAP_CASADI_FNC'
.
.
.
  405 |     MAP_CASADI_FNC(ext_cost_e_fun_jac_hess, HyFCD_V2_cost_ext_cost_e_fun_jac_hess);
      |     ^~~~~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/external_function_interface.h:90:6: note: declared here
   90 | void external_function_external_param_casadi_create(external_function_external_param_casadi *fun);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c: In function 'HyFCD_V2_acados_create_with_discretization':
acados_solver_HyFCD_V2.c:897:27: error: too many arguments to function 'ocp_nlp_solver_create'
  897 |     capsule->nlp_solver = ocp_nlp_solver_create(capsule->nlp_config, capsule->nlp_dims, capsule->nlp_opts, capsule->nlp_in);
      |                           ^~~~~~~~~~~~~~~~~~~~~
In file included from acados_solver_HyFCD_V2.c:37:
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:369:38: note: declared here
  369 | ACADOS_SYMBOL_EXPORT ocp_nlp_solver *ocp_nlp_solver_create(ocp_nlp_config *config, ocp_nlp_dims *dims, void *opts_);
      |                                      ^~~~~~~~~~~~~~~~~~~~~
acados_solver_HyFCD_V2.c: In function 'HyFCD_V2_acados_print_stats':
acados_solver_HyFCD_V2.c:1080:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1080 |     ocp_nlp_get(capsule->nlp_solver, "nlp_iter", &nlp_iter);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_HyFCD_V2.c:1080:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1080 |     ocp_nlp_get(capsule->nlp_solver, "nlp_iter", &nlp_iter);
      |                                      ^~~~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                                               ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_HyFCD_V2.c:1080:50: warning: passing argument 3 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1080 |     ocp_nlp_get(capsule->nlp_solver, "nlp_iter", &nlp_iter);
      |                                                  ^~~~~~~~~
      |                                                  |
      |                                                  int *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:439:21: note: expected 'const char *' but argument is of type 'int *'
  439 |         const char *field, void *return_value_);
      |         ~~~~~~~~~~~~^~~~~
acados_solver_HyFCD_V2.c:1080:5: error: too few arguments to function 'ocp_nlp_get'
 1080 |     ocp_nlp_get(capsule->nlp_solver, "nlp_iter", &nlp_iter);
      |     ^~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:27: note: declared here
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                           ^~~~~~~~~~~
acados_solver_HyFCD_V2.c:1081:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1081 |     ocp_nlp_get(capsule->nlp_solver, "stat_n", &stat_n);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_HyFCD_V2.c:1081:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1081 |     ocp_nlp_get(capsule->nlp_solver, "stat_n", &stat_n);
      |                                      ^~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                                               ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_HyFCD_V2.c:1081:48: warning: passing argument 3 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1081 |     ocp_nlp_get(capsule->nlp_solver, "stat_n", &stat_n);
      |                                                ^~~~~~~
      |                                                |
      |                                                int *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:439:21: note: expected 'const char *' but argument is of type 'int *'
  439 |         const char *field, void *return_value_);
      |         ~~~~~~~~~~~~^~~~~
acados_solver_HyFCD_V2.c:1081:5: error: too few arguments to function 'ocp_nlp_get'
 1081 |     ocp_nlp_get(capsule->nlp_solver, "stat_n", &stat_n);
      |     ^~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:27: note: declared here
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                           ^~~~~~~~~~~
acados_solver_HyFCD_V2.c:1082:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1082 |     ocp_nlp_get(capsule->nlp_solver, "stat_m", &stat_m);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_HyFCD_V2.c:1082:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1082 |     ocp_nlp_get(capsule->nlp_solver, "stat_m", &stat_m);
      |                                      ^~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                                               ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_HyFCD_V2.c:1082:48: warning: passing argument 3 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1082 |     ocp_nlp_get(capsule->nlp_solver, "stat_m", &stat_m);
      |                                                ^~~~~~~
      |                                                |
      |                                                int *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:439:21: note: expected 'const char *' but argument is of type 'int *'
  439 |         const char *field, void *return_value_);
      |         ~~~~~~~~~~~~^~~~~
acados_solver_HyFCD_V2.c:1082:5: error: too few arguments to function 'ocp_nlp_get'
 1082 |     ocp_nlp_get(capsule->nlp_solver, "stat_m", &stat_m);
      |     ^~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:27: note: declared here
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                           ^~~~~~~~~~~
acados_solver_HyFCD_V2.c:1086:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1086 |     ocp_nlp_get(capsule->nlp_solver, "statistics", stat);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_HyFCD_V2.c:1086:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1086 |     ocp_nlp_get(capsule->nlp_solver, "statistics", stat);
      |                                      ^~~~~~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                                               ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_HyFCD_V2.c:1086:52: warning: passing argument 3 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
 1086 |     ocp_nlp_get(capsule->nlp_solver, "statistics", stat);
      |                                                    ^~~~
      |                                                    |
      |                                                    double *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:439:21: note: expected 'const char *' but argument is of type 'double *'
  439 |         const char *field, void *return_value_);
      |         ~~~~~~~~~~~~^~~~~
acados_solver_HyFCD_V2.c:1086:5: error: too few arguments to function 'ocp_nlp_get'
 1086 |     ocp_nlp_get(capsule->nlp_solver, "statistics", stat);
      |     ^~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:27: note: declared here
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                           ^~~~~~~~~~~
cc1.exe: some warnings being treated as errors
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_sim_solver_HyFCD_V2.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2\MakeCompile.err.
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_solver_HyFCD_V2.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2\MakeCompile.err.
acados_solver_sfunction_HyFCD_V2.c: In function 'mdlOutputs':
acados_solver_sfunction_HyFCD_V2.c:281:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  281 |     ocp_nlp_get(capsule->nlp_solver, "time_tot", (void *) buffer);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
In file included from acados_solver_HyFCD_V2.h:36,
                 from acados_solver_sfunction_HyFCD_V2.c:42:
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:281:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  281 |     ocp_nlp_get(capsule->nlp_solver, "time_tot", (void *) buffer);
      |                                      ^~~~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                                               ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:281:5: error: too few arguments to function 'ocp_nlp_get'
  281 |     ocp_nlp_get(capsule->nlp_solver, "time_tot", (void *) buffer);
      |     ^~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:27: note: declared here
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                           ^~~~~~~~~~~
acados_solver_sfunction_HyFCD_V2.c:300:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  300 |     ocp_nlp_get(capsule->nlp_solver, "cost_value", (void *) out_ptr);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:300:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  300 |     ocp_nlp_get(capsule->nlp_solver, "cost_value", (void *) out_ptr);
      |                                      ^~~~~~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                                               ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:300:5: error: too few arguments to function 'ocp_nlp_get'
  300 |     ocp_nlp_get(capsule->nlp_solver, "cost_value", (void *) out_ptr);
      |     ^~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:27: note: declared here
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                           ^~~~~~~~~~~
acados_solver_sfunction_HyFCD_V2.c:309:24: warning: passing argument 1 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  309 |     ocp_nlp_get(capsule->nlp_solver, "sqp_iter", (void *) &tmp_int);
      |                 ~~~~~~~^~~~~~~~~~~~
      |                        |
      |                        ocp_nlp_solver *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:55: note: expected 'ocp_nlp_config *' but argument is of type 'ocp_nlp_solver *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                       ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:309:38: warning: passing argument 2 of 'ocp_nlp_get' from incompatible pointer type [-Wincompatible-pointer-types]
  309 |     ocp_nlp_get(capsule->nlp_solver, "sqp_iter", (void *) &tmp_int);
      |                                      ^~~~~~~~~~
      |                                      |
      |                                      char *
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:79: note: expected 'ocp_nlp_solver *' but argument is of type 'char *'
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                                                               ~~~~~~~~~~~~~~~~^~~~~~
acados_solver_sfunction_HyFCD_V2.c:309:5: error: too few arguments to function 'ocp_nlp_get'
  309 |     ocp_nlp_get(capsule->nlp_solver, "sqp_iter", (void *) &tmp_int);
      |     ^~~~~~~~~~~
C:\Users\Kn\Documents\06GitLab\acados_compiled\buildDS1403\install\include/acados_c/ocp_nlp_interface.h:438:27: note: declared here
  438 | ACADOS_SYMBOL_EXPORT void ocp_nlp_get(ocp_nlp_config *config, ocp_nlp_solver *solver,
      |                           ^~~~~~~~~~~
### Error detected while trying to execute C:\Program Files\Common Files\dSPACE\CFD Compiler 24.1\target\arm-linux-gnueabihf\bin\arm-linux-gnueabihf-gcc.exe in C:/Users/Kn/Documents/06GitLab/hy-fcd-mpc/06ACADOS/c_generated_code.
### Error Message: Compiling failed  "C:\Users\Kn\Documents\06GitLab\hy-fcd-mpc\06ACADOS\c_generated_code\acados_solver_sfunction_HyFCD_V2.c"
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2\MakeCompile.err.
Compilation was not successful. (1)
### Error detected while trying to execute C:\Program Files\dSPACE ConfigurationDesk 2024-A (24.1)\DS1403\bin\dsmake.exe in C:/Users/Kn/AppData/Local/Temp/dSPACE/CfgDesk/AppCache/3/Build/dSPACE_HyFCD_MPC_V2/Compile/dSPACE_HyFCD_MPC_V2.
### Error Message: Making "dSPACE_HyFCD_MPC_V2\dSPACE_HyFCD_MPC_V2.mk" failed
### For more information, refer to C:\Users\Kn\AppData\Local\Temp\dSPACE\CfgDesk\AppCache\3\Build\dSPACE_HyFCD_MPC_V2\Compile\dSPACE_HyFCD_MPC_V2_em.err.
Compilation was not successful. (1)
The make phase failed for the following application process: dSPACE_HyFCD_MPC_V2.

Hi,
those include correspond to functionality that was added or modified recently in acados.
Please make sure that you install acados again, whenever you update.
It seems that right now your include folder is outdated.
I hope you can deploy your S-function, once this is fixed.
Best,
Jonathan

Hi Jonathan,

I have reinstalled ACADOS and now the compilation in ConfigurationDesk works. Thank you very much.

Jannis