Welcome new user! You can search existing questions and answers without registering, but please register to post new questions and receive answers. Note that due to large amounts of spam attempts, your first three posts will be manually moderated, so please be patient.
Because of un-manageable amounts of spam despite our use of CAPTCHAs, email authorization, and other tools, we have discontinued this forum (see the 700k+ registered users with validated email addresses at right?). Please email us any questions or post bug reports and feature requests on GitHub at https://github.com/jevois -- The content below remains available for future reference.

Cross-compiled module using BlobDetector : undefined symbol ?

+1 vote

Hello there,

I am trying to create a new c++ module for my JeVois A33. I want t be able to detect objects using BlobDetector and save images to microSD card when a object is detected. I took the code from ObjectTracker module (https://github.com/jevois/jevoisbase/tree/master/src/Modules/ObjectTracker) and just add some cv::imwrite inside. It compile well but when i start the new module from host or platform an error appear :

 "Error opening shared library [/jevois/modules/username/icoc_blob/icoc_blob.so]: /jevois/modules/username/icoc_blob/icoc_blob.so: undefined symbol: _ZTI12BlobDetector]"

I am struggling with it, anyone have a solution or advices ?


asked Aug 19, 2019 in Programmer Questions by opusr (520 points)

1 Answer

+1 vote
Best answer
did you start from the jevois sample module? If so, you need to edit your CMakeLists.txt to link against the jevoisbase library, since BlobDetector is implemented in that library.

There are some explanations in the CMakeLists.txt, please see https://github.com/jevois/samplemodule/blob/master/CMakeLists.txt

typically, you would need to uncomment the commands link_directories(), include_directories(), and add jevoisbase as a dependent library in the list in target_link_libraries()

If this does not work, please email us your source code (the whole module directory) and we will help you.
answered Aug 21, 2019 by JeVois (46,580 points)
selected Aug 25, 2019 by opusr
Thanks, this solved my problem.