„Niezdefiniowane odniesienie do„ cblas_ddot ”podczas korzystania z biblioteki cblas
Testowałem cblas ddot, a kod, którego użyłem, pochodzi zpołączyć i naprawiłem to jako
#include <stdio.h>
#include <stdlib.h>
#include <cblas.h>
int main()
{
double m[10],n[10];
int i;
int result;
printf("Enter the elements into first vector.\n");
for(i=0;i<10;i++)
scanf("%lf",&m[i]);
printf("Enter the elements into second vector.\n");
for(i=0;i<10;i++)
scanf("%lf",&n[i]);
result = cblas_ddot(10, m, 1, n, 1);
printf("The result is %d\n",result);
return 0;
}
Kiedy go skompilowałem, okazało się, że:
/tmp/ccJIpqKH.o: In function `main':
test.c:(.text+0xbc): undefined reference to `cblas_ddot'
collect2: ld returned 1 exit status
Sprawdziłem plik cblas w/usr/include/cblas.h
i zauważyłem, że jest
double cblas_ddot(const int N, const double *X, const int incX,
const double *Y, const int incY);
Nie wiem, gdzie jest źle. Dlaczego kompilator powiedział, że „cblas_ddot” jest niezdefiniowanym odniesieniem?