Intel® Distribution of OpenVINO™ Toolkit
Community assistance about the Intel® Distribution of OpenVINO™ toolkit, OpenCV, and all aspects of computer vision-related on Intel® platforms.

Rasperry PI 3B+ with Intel Movidius NCS 2

MiloszJ
Beginner
1,191 Views

Hello there,

 

I am currently working on my diploma thesis where I prepare the system for traffic signs recognition. I have my own models prepared and converted to the .xml and .bin files, but I am currently struggling with NCS 2 integration on Raspberry PI 3B+. 

 

I tried to use this guidelines https://www.intel.com/content/www/us/en/support/articles/000057005/boards-and-kits.html and some other articles but the process always fails, while doing this step:

docker container run --rm -ti -v $PWD/build:/arm_cpu_plugin arm-plugin "

 

The build of the Docker image went well, but there is one line to change not included in the article, because for know it is required to change line 78 of the dockerfiles/Dockerfile.RPi32_buster from

curl https://bootstrap.pypa.io/get-pip.py | python3.7 - --no-cache-dir pip==20.2.2 numpy==1.19.5 cython

to

curl https://bootstrap.pypa.io/pip/3.7/get-pip.py | python3.7 - --no-cache-dir pip==20.2.2 numpy==1.19.5 cython

but it is not a big deal. 

 

The main problem occurs while running the arm_cpu_plugin.sh with the 

docker container run --rm -ti -v $PWD/build:/arm_cpu_plugin arm-plugin command.

The process always fails for me in random places when building openvino. It happens always about 70/75 % of the make and I can't find out why. The message in the CMakeError.log is always the same but happens in different places it is something like that: 

Determining if the pthread_create exist failed with the following output:

Change Dir: /arm_cpu_plugin/openvino/build/CMakeFiles/CMakeTmp Run Build Command:"/usr/bin/make" "cmTC_b8a3d/fast" /usr/bin/make -f CMakeFiles/cmTC_b8a3d.dir/build.make CMakeFiles/cmTC_b8a3d.dir/build make[1]: Entering directory '/arm_cpu_plugin/openvino/build/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_b8a3d.dir/CheckSymbolExists.c.o /usr/bin/arm-linux-gnueabihf-gcc -o CMakeFiles/cmTC_b8a3d.dir/CheckSymbolExists.c.o -c /arm_cpu_plugin/openvino/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c Linking C executable cmTC_b8a3d /usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_b8a3d.dir/link.txt --verbose=1 /usr/bin/arm-linux-gnueabihf-gcc -Wl,-rpath-link,/arm_cpu_plugin/armcpu_package/opencv/lib CMakeFiles/cmTC_b8a3d.dir/CheckSymbolExists.c.o -o cmTC_b8a3d /usr/lib/gcc-cross/arm-linux-gnueabihf/8/../../../../arm-linux-gnueabihf/bin/ld: CMakeFiles/cmTC_b8a3d.dir/CheckSymbolExists.c.o: in function main': CheckSymbolExists.c:(.text+0x2c): undefined reference to pthread_create' collect2: error: ld returned 1 exit status make[1]: *** [CMakeFiles/cmTC_b8a3d.dir/build.make:87: cmTC_b8a3d] Error 1 make[1]: Leaving directory '/arm_cpu_plugin/openvino/build/CMakeFiles/CMakeTmp' make: *** [Makefile:121: cmTC_b8a3d/fast]

Error 2 File /arm_cpu_plugin/openvino/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c: /* */

#include <pthread.h>

int main(int argc, char** argv) {

(void)argv;

#ifndef pthread_create

return ((int*)(&pthread_create))[argc];

#else (void)

argc;

return 0;

#endif

}

I am using Ubuntu Focal as a host machine and the first part of the build, so opencv build always completes without any problems.

Are there any solutions for this topics or maybe some easier way to use NCS2 on Raspberry? 

I am completely lost for now and I've spent many hours trying to resolve the issue without any effects  

 Thank you for any hints and information  

 

Labels (1)
0 Kudos
2 Replies
Peh_Intel
Moderator
1,094 Views

Hi MiloszJ,

 

For your information, the easiest way to use Intel® Neural Compute Stick 2 (NCS2) on Raspberry Pi is to install OpenVINO™ Runtime using prebuilt package.

 

Please refer to the installation instructions to install OpenVINO™ Runtime for Raspbian OS and the configuration for NCS2.

 

 

Regards,

Peh


0 Kudos
Peh_Intel
Moderator
979 Views

Hi MiloszJ,


This thread will no longer be monitored since we have provided a solution. If you need any additional information from Intel, please submit a new question. 



Regards,

Peh


0 Kudos
Reply