Аварийная остановка Octave API Ubuntu C++

Я новичок в работе API Octave C++.Мне необходимо найти обратную матрицу. Код написан, Выводит начальную матрицу, но крашится при выводе обратной. Не понимаю, почему так. Информации по Octave API очень мало, поэтому помогал только Chat GPT. Если сможете исправить код, буду благодарен.

Вот сам код:

#include <iostream>
#include <octave/oct.h>
#include <octave/octave.h>
#include <octave/parse.h>

int main() {
    // Создание матрицы 5x5
    Matrix A(5, 5);
    A(0,0) = 1; A(0,1) = 2; A(0,2) = 3; A(0,3) = 4; A(0,4) = 5;
    A(1,0) = 6; A(1,1) = 7; A(1,2) = 8; A(1,3) = 9; A(1,4) = 10;
    A(2,0) = 11; A(2,1) = 12; A(2,2) = 13; A(2,3) = 14; A(2,4) = 15;
    A(3,0) = 16; A(3,1) = 17; A(3,2) = 18; A(3,3) = 19; A(3,4) = 20;
    A(4,0) = 21; A(4,1) = 22; A(4,2) = 23; A(4,3) = 24; A(4,4) = 25;

    // Вывод исходной матрицы
    std::cout << "Исходная матрица A:\n" << A << std::endl;

    // Вызов функции обратной матрицы
    octave_value_list in_args;
    in_args(0) = A;
    octave_value_list out_args = octave::feval("inv", in_args, 1);

    // Получение результата
    Matrix A_inv = out_args(0).matrix_value();

    // Вывод обратной матрицы
    std::cout << "Обратная матрица A:\n" << A_inv << std::endl;

    return 0;
}

Вот моя компиляция:

g++ -o 1 1.cpp -I/usr/include/octave-6.4.0 -I/usr/include/octave-6.4.0/octave -I/usr/include/octave-6.4.0/octave/interpreter -I/usr/include -I/usr/include/octave-6.4.0/octave -I/usr/include/octave-6.4.0/octave/octave-config.h -loctave -loctinterp -Wl,-rpath,/usr/lib/x86_64-linux-gnu/octave/6.4.0 -L/usr/lib/x86_64-linux-gnu/octave/6.4.0 -Wl,--no-as-needed -loctave -loctinterp

Вывод в терминале


Ответы (0 шт):