В настоящее время я запускаю проблему оптимизации IPOPT через интерфейс CasADi. Я генерирую скомпилированные файлы CasADi (libcasadi_solver. c & libcasadi_solver.so), связываю CasADi через CMakeLists и вызываю их функцию csolver через оболочку. cpp:
nlpsol("csolver", "ipopt", "libcasadi_solver.so", solve_opts);
Я хочу получить Вторая проблема решена через этот интерфейс CasADi в той же программе C ++. Я думал, что смогу сделать это sh, сгенерировав разные файлы libcasadi_solver, скажем libcasadi_solver_1 и libcasadi_solver_2.
Однако компилятору это не нравится, выдает ошибку:
/ usr / bin / ld: не удается найти -lcasadi_solver
Интересно, что lcasadi_solver отличается от libcasadi_solver ... Я думаю, что эти имена настроены в установке / настройке casadi. Может быть, мне нужны две установки для запуска двух разных проблем? Похоже, неправильная идея. Я не буду называть эти проблемы параллельными, поэтому я полагаю, что мне не нужно беспокоиться о поточно-ориентированном программировании.
Любая помощь, предложения по достоинству оценены!