2015-05-04 6 views
1

Я установил OpenBlas и может компилировать программы на языке Си, связанных с OpenBlas с помощьюКак связать C++ с OpenBlas?

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

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

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

Любые намеки ?

+2

это не ошибка компоновщика –

ответ

1

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

Так что вопрос: есть ли файл /opt/OpenBLAS/include/OpenBlas/cblas.h?

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

+0

'/ opt/OpenBLAS/include/cblas.h' существует. В моем коде я также '#include '. common.h не входит в папку include. – Tarek

+0

Я обнаружил, что исходный файл должен быть напечатан перед -I флагом. – Tarek

2

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

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

Смежные вопросы