compiling OpenCV 4.1.1 on ARM64
hi all, i am hoping someone might be able to get me past this hurdle...
i am using a libreboard renegade (Rockchip RK3288) running lubuntu. i have installed opencv 3.2.2 from the repository with apt-get but i need the newer version of 4.1.1. i have most dependencies, i think, so i compile from source with
cmake -DBUILD_SHARED_LIBS=OFF .. make -j4
it runs through much of the building until it runs into this error. my version of libgtk-3-dev is reported to be at the newest version available in the repositories
/usr/lib/aarch64-linux-gnu/libgtk-3.so: undefined reference to `g_log_structured_standard' collect2: error: ld returned 1 exit status modules/core/CMakeFiles/opencv_test_core.dir/build.make:1006: recipe for target 'bin/opencv_test_core' failed make[2]: * [bin/opencv_test_core] Error 1 CMakeFiles/Makefile2:1460: recipe for target 'modules/core/CMakeFiles/opencv_test_core.dir/all' failed make[1]: [modules/core/CMakeFiles/opencv_test_core.dir/all] Error 2 Makefile:162: recipe for target 'all' failed make: ** [all] Error 2
looks like others have encountered this as well but i could not find a solution. any advice?
Where did you get this
make --j 4
? This should bemake -j4
. Kindly, updateOpenCV 4.2.0
thanks supra56, but "make -j4" and using OpenCV 4.2.0 gives the same result ... /usr/lib/aarch64-linux-gnu/libgtk-3.so: undefined reference to `g_log_structured_standard' collect2: error: ld returned 1 exit status modules/core/CMakeFiles/opencv_test_core.dir/build.make:1006: recipe for target 'bin/opencv_test_core' failed make[2]: * [bin/opencv_test_core] Error 1 CMakeFiles/Makefile2:1460: recipe for target 'modules/core/CMakeFiles/opencv_test_core.dir/all' failed make[1]: [modules/core/CMakeFiles/opencv_test_core.dir/all] Error 2 Makefile:162: recipe for target 'all' failed make: ** [all] Error 2
seeing that it is a problem with opencv_test_core.dir i turned off
-DBUILD_TESTS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_opencv_python3=OFF -DINSTALL_TESTS=OFF
it now gets further and only after built target opencv_stitching it reports ... Makefile:162: recipe for target 'all' failed make: ** [all] Error 2
continuing to run into the same error. still getting undefined reference to `g_log_structured_standard', now in opencv_annotation. can i turn this one off at cmake like i turned off the tests? do i need the annotations? ... or can i define the g_log_structured_standard somewhere? any advise greatly appreciated
sudo apt install ibgtk-3-dev
i assume that is meant libgtk-3-dev. as i mentioned above i have libgte-3-dev at the newest level from repository (3.22.30-lubuntu4). still without even a guess at a solution
Are you using Raspbian Buster?
No, using libreboard renegade (Rockchip RK3328) running lubuntu 18.04. The processor is a quad-core A53x4 64-bit processor, with 4GB DDR4 RAM - NOT a raspberry pi
still hoping someone might point me to an understanding of g_log_structured_standard and similar. compile fails with a number of references to such structures being undefined.