Проблема с включенным инструментарием KFR заголовка c ++ в usr / include - PullRequest
0 голосов
/ 28 января 2020

Я пытался установить kfr toolkit, но не могу включить его в свой файл. Я уже клонировал его из github в моем файле usr / include, используя:

git clone https://github.com/kfrlib/kfr.git

Затем я сделал этот шаг:

sudo apt install clang
cd <path_to_kfr_repository>
mkdir build && cd build
cmake -GNinja -DENABLE_CAPI_BUILD=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER=clang++ ..
ninja kfr_capi

У меня было это сообщение об ошибке:

In file included from main.cpp:5:0:
soundtreatment.h:4:10: fatal error: kfr/math.hpp: No such file or directory
 #include <kfr/math.hpp>
          ^~~~~~~~~~~~~~
compilation terminated.

Я не могу понять, почему include не находит файл rigth ... Kfr ее устанавливает: // usr / include / kfr / include / kfr

что-то кажется неправильным, потому что 2 include появляются один путь, но я следовал тому же шагу, который был написан в файле Readme

кто-то может мне помочь?

Спасибо

edit: Сообщение об ошибке fr- > en

пытаясь переместить kfr в первое включение, я сделал это: я был ею: // usr / include / kfr mv kfr // usr / include / kfr2

затем я перемещаю // usr / include / kfr2 / include / kfr в // usr / include

И получаю это сообщение об ошибке:


In file included from /usr/include/kfr/simd/impl/backend.hpp:29:0,
                 from /usr/include/kfr/simd/vec.hpp:30,
                 from /usr/include/kfr/simd/mask.hpp:28,
                 from /usr/include/kfr/simd/shuffle.hpp:28,
                 from /usr/include/kfr/base/expression.hpp:29,
                 from /usr/include/kfr/simd/impl/function.hpp:25,
                 from /usr/include/kfr/simd/comparison.hpp:29,
                 from /usr/include/kfr/simd.hpp:25,
                 from /usr/include/kfr/math.hpp:25,
                 from soundtreatment.h:4,
                 from main.cpp:5:
/usr/include/kfr/simd/impl/backend_generic.hpp:1524:71: error: macro "_mm_shuffle_ps" passed 7 arguments, but takes just 3
     return _mm_shuffle_ps(x, x, shuffle_mask<8, I0, I1, I2, I3>::value);
                                                                       ^
/usr/include/kfr/simd/impl/backend_generic.hpp:1531:63: error: macro "_mm_shuffle_pd" passed 5 arguments, but takes just 3
     return _mm_shuffle_pd(x, x, shuffle_mask<2, I0, I1>::value);
                                                               ^
/usr/include/kfr/simd/impl/backend_generic.hpp: In function ‘kfr::sse2::intrinsics::simd<float, 4> kfr::sse2::intrinsics::simd_vec_shuffle(kfr::sse2::intrinsics::simd_t<float, 4>, kfr::sse2::intrinsics::simd<float, 4>&, cometa::csizes_t<I0, I1, I2, I3>)’:
/usr/include/kfr/simd/impl/backend_generic.hpp:1524:12: error: ‘_mm_shuffle_ps’ was not declared in this scope
     return _mm_shuffle_ps(x, x, shuffle_mask<8, I0, I1, I2, I3>::value);
            ^~~~~~~~~~~~~~
/usr/include/kfr/simd/impl/backend_generic.hpp:1524:12: note: suggested alternative: ‘_mm_shuffle_pi8’
     return _mm_shuffle_ps(x, x, shuffle_mask<8, I0, I1, I2, I3>::value);
            ^~~~~~~~~~~~~~
            _mm_shuffle_pi8
/usr/include/kfr/simd/impl/backend_generic.hpp: In function ‘kfr::sse2::intrinsics::simd<double, 2> kfr::sse2::intrinsics::simd_vec_shuffle(kfr::sse2::intrinsics::simd_t<double, 2>, kfr::sse2::intrinsics::simd<double, 2>&, cometa::csizes_t<I0, I1>)’:
/usr/include/kfr/simd/impl/backend_generic.hpp:1531:12: error: ‘_mm_shuffle_pd’ was not declared in this scope
     return _mm_shuffle_pd(x, x, shuffle_mask<2, I0, I1>::value);
            ^~~~~~~~~~~~~~
/usr/include/kfr/simd/impl/backend_generic.hpp:1531:12: note: suggested alternative: ‘_mm_shuffle_pi8’
     return _mm_shuffle_pd(x, x, shuffle_mask<2, I0, I1>::value);
            ^~~~~~~~~~~~~~
            _mm_shuffle_pi8

...