Я новичок в BLAS и пытаюсь скомпилировать мою программу Fortran, которая использует BLAS для матрично-матричного умножения. У меня есть две матрицы А и В.fortran compile blas program error
integer, parameter :: RK = selected_real_kind(10,2)
real(kind=RK),pointer :: A(:,:), B(:,:), C(:,:)
тогда я поставить некоторые случайные значения в него и попытаться умножить:
call dgemm('N', 'N', N, N, N, 1.0_RK,
A, N, B, N, 0.0_RK, C, N)
N является размер обеих матриц. Правильно ли все параметры?
Я не могу скомпилировать и получить следующее сообщение об ошибке:
call dgemm('N', 'N', N, N, N, 1.0_RK,
1
Error: Syntax error in argument list at (1)
matrixmul.F90:44.2:
A, N, B, N, 0.0_RK, C, N)
1
Error: Unclassifiable statement at (1)
В чем проблема? Должен ли я скомпилировать определенный флаг BLAS? Я установил BLAS как explained here.
Thans! Теперь я компилирую с -lblas и имею еще одну ошибку: matrixmul.F90 :(. Text + 0x592): неопределенная ссылка на 'dgemm_ '. Как я могу проверить, что BLAS установлен? – Bob
искать 'libblas.so' или' libblas.a' или 'blas.dll' Какую ОС у вас? –
My OS - Ubuntu 12.04 и после поиска у меня есть: /etc/alternatives/libblas.a /usr/lib/libblas.a /usr/lib/libblas/libblas.a, который указывает, что эта библиотека установлена. – Bob