This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CrossCompiling for TDA4

Hello I am trying to crosscompile an OpenCV application for the TD4VM running Linux. I am using the gcc.toolchain cross-compiler specified by TI (https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-jacinto7/08_06_01_02/exports/docs/linux/Overview/GCC_ToolChain.html)

Now i have cross compiled all the necersarry libraries. But when i try to compile i get a buch of errors regarding GLIBCXX_3.4.22, GLIBCXX_3.4.11 etc.. After some investigate , those should be part of libstdc++.so.6 which is part of the toolcahin, bu tnormally after invoking strings /home/apc1wi/Documents/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/aarch64-none-linux-gnu/lib64/libstdc++.so.6 | grep GLIBCXX in the command line it should list all the GLIBCXX versionen.. But it doesnt show any. I dont know if this is the reason for my errors or not. I will add some part of the compiling errors aswell

/home/apc1wi/Documents/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin/../lib/gcc/aarch64-none-linux-gnu/9.2.1/../../../../aarch64-none-linux-gnu/bin/ld: /home/apc1wi/Documents/opencv_crosscompile/opencv-4.x/build/lib//libopencv_core.so: undefined reference to `std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()@GLIBCXX_3.4.26'
/home/apc1wi/Documents/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin/../lib/gcc/aarch64-none-linux-gnu/9.2.1/../../../../aarch64-none-linux-gnu/bin/ld: /home/apc1wi/Documents/opencv_crosscompile/opencv-4.x/build/lib//libopencv_core.so: undefined reference to `std::ostream::operator<<(int)@GLIBCXX_3.4'
/home/apc1wi/Documents/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin/../lib/gcc/aarch64-none-linux-gnu/9.2.1/../../../../aarch64-none-linux-gnu/bin/ld: /home/apc1wi/Documents/opencv_crosscompile/opencv-4.x/build/lib//libopencv_core.so: undefined reference to `__cxa_begin_catch@CXXABI_1.3'
/home/apc1wi/Documents/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin/../lib/gcc/aarch64-none-linux-gnu/9.2.1/../../../../aarch64-none-linux-gnu/bin/ld: /home/apc1wi/Documents/opencv_crosscompile/opencv-4.x/build/lib//libopencv_core.so: undefined reference to `std::ios_base::~ios_base()@GLIBCXX_3.4'
/home/apc1wi/Documents/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin/../lib/gcc/aarch64-none-linux-gnu/9.2.1/../../../../aarch64-none-linux-gnu/bin/ld: /home/apc1wi/Documents/opencv_crosscompile/opencv-4.x/build/lib//libopencv_core.so: undefined reference to `std::__basic_file<char>::is_open() const@GLIBCXX_3.4'
/home/apc1wi/Documents/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin/../lib/gcc/aarch64-none-linux-gnu/9.2.1/../../../../aarch64-none-linux-gnu/bin/ld: /home/apc1wi/Documents/opencv_crosscompile/opencv-4.x/build/lib//libopencv_core.so: undefined reference to `std::ostream& std::ostream::_M_insert<double>(double)@GLIBCXX_3.4.9'
/home/apc1wi/Documents/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin/../lib/gcc/aarch64-none-linux-gnu/9.2.1/../../../../aarch64-none-linux-gnu/bin/ld: /home/apc1wi/Documents/opencv_crosscompile/opencv-4.x/build/lib//libopencv_core.so: undefined reference to `std::__exception_ptr::exception_ptr::swap(std::__exception_ptr::exception_ptr&)@CXXABI_1.3.3'

  • Hi,

    OpenCV is not supported in the SDK out of the box. You would have to add the relevant libraries and compile the same.
    Regarding the above issue, let me tag in the compiler expert to this thread.

    Meanwhile, could you let me know what is the build command that you are using?

    Regards,

    Nikhil