linker — Как связать c ++ с OpenBlas?

Я установил OpenBlas и мог скомпилировать программы на C, связанные с OpenBlas, используя

 gcc testOpenBlas.c  -I /opt/OpenBLAS/include/ -L/opt/OpenBLAS/lib -lopenblas

Если я пытаюсь связать программы на языке c ++, используя g ++ и те же опции компоновщика, я получаю сообщение об ошибке:

testOpenBlas.cpp:1:28: fatal error: OpenBlas/cblas.h: No such file or directory
#include <OpenBlas/cblas.h>

Есть намеки?

2

Решение

Вот что я сделал:
Мне пришлось перекомпилировать OpenBlas снова с g ++.
Я обнаружил, что файл common.h существует в исходной папке, поэтому мне пришлось включить его вместо папки установки / opt / OpenBlas. Я все еще использую флаг ‘-L / opt / OpenBLAS / lib’.

Тогда проблема была решена.

2

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

Эта директива включения ищет путь OpenBlas/cblas.h во всех ваших включаемых каталогах, в частности также в /opt/OpenBLAS/include/,

Таким образом, вопрос: существует ли файл /opt/OpenBLAS/include/OpenBlas/cblas.h?

Также я думаю, что вам, возможно, придется указать -I флаг перед исходным файлом.

1

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