Я хочу использовать Armadillo с Eclipse. Однако все инструкции по связыванию Armadillo приведены для Visual Studio. Теперь я выполнил инструкции, указанные в файле ReadMe файла Armadillo library. Я добавил папку Armadillo include в project(right click)->properties->C/C++ Build->Settings->Cross G++ Compiler->Includes->Inlcude paths(-I)
, а затем добавил папку с библиотеками (папка библиотеки содержит файлы lapack и blas .lib и .dll) в project(right click)->properties->C/C++ Build->Settings->Cross G++ Linker->Libraries->Library search path (-L)
.Как связать Armadillo с Eclipse
Однако при компиляции кода в Eclipse, я получаю ошибку
.....armadillo_bits/lapack_wrapper.hpp:37: undefined reference to `dgetrf_'.
Не должна ли она просто искать .lib файлы в папке библиотеки и включить их во время компиляции? Буду признателен за любую помощь в этом вопросе.
С уважением, ТМ
Привет, Фрэнсис, спасибо за совет. Однако у меня нет файлов .so файлов lapack, blas, m или armadillo. Единственные файлы библиотеки, которые у меня есть, имеют форму lapack_WIN64_MT.lib и blas_WIN64_MT.lib. Когда я связываю папку Armadillo и добавляю lapack и blas в качестве библиотек, я получаю сообщение об ошибке «не могу найти lapack и blas». Поэтому я предполагаю, что мне не хватает файлов .so, но где я могу их найти? – hellfragger
Не могли бы вы добавить 'lapack_WIN64_MT' и' blas_WIN64_MT' в качестве библиотек вместо 'lapack' и' blas'? Согласно [именованию конвенции MinGW] (http://www.mingw.org/wiki/specify_the_libraries_for_the_linker_to_use), это может решить вашу проблему. – francis
Я пробовал, но он читает, не может найти lapack_WIN64_MT и не может найти blas_WIN64_MT. Я как бы отказался и использовал библиотеку алгебр собственных лайнеров – hellfragger