Как позвонить в desgv из LAPACK

Обновить

ошибка: пустое значение не игнорируется, как должно быть

Новое обновление

Я попытался создать экспериментальную функцию для тестирования dgesv, но там говорится, что он не может найти -llapack сейчас, что странно, потому что я установил его через yum.

У меня возникли проблемы с вызовом дгесва из LAPACK. В настоящее время я пробовал это:

extern "C"{
void dgesv(int *N, int *NRHS, double *A,
int *LDA, int *IPIV,
double *B, int *LDB, int *INFO);
}

dgesv(&lengthA, &widthF, A, &leadingDemA,
permMat, B, &leadingDemB, &errorCheck);

Проблема даже когда я компилирую с g++ program -llapackКомпилятор кричит на меня.

Что я делаю неправильно?

0

Решение

Есть пара проблем с кодом, который вы разместили. Сначала декларация dgesv отсутствует точка с запятой. Вы также проходите мимо A, B а также permMat неправильно. Скобки следует использовать только тогда, когда переменные объявлены или определены, как показано ниже

char a[10];
void f(char a[]);

Следующие изменения должны позаботиться о проблемах компиляции, если код, который вы опубликовали, является реальным кодом, который вы используете.

extern "C"{
void dgesv(int *lengthA, int *widthF, double *A,
int *leadingDemA, double *permMat,
double *B, int *leadingDemB, int *errorCheck); // <-- semi-colon
}

dgesv(&lengthA, &widthF, A, &leadingDemA, permMat, B, &leadingDemB, &errorCheck);
//                        ^^                    ^^  ^^
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]