FS#54494 - opencv version is not matching GCC

Attached to Project: Arch Linux
Opened by Alexander Birukov (sanya_rnd) - Saturday, 17 June 2017, 19:19 GMT
Last edited by Doug Newgard (Scimmia) - Sunday, 18 June 2017, 01:45 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Current GCC version in repo is 7.1, while OpenCV is compiled with GCC 6.1.
Needs re-compilation and update.
This task depends upon

Closed by  Doug Newgard (Scimmia)
Sunday, 18 June 2017, 01:45 GMT
Reason for closing:  Not a bug
Comment by Antonio Rojas (arojas) - Saturday, 17 June 2017, 19:32 GMT
why?
Comment by Alexander Birukov (sanya_rnd) - Saturday, 17 June 2017, 20:17 GMT
Not linking to the code.
Comment by Antonio Rojas (arojas) - Saturday, 17 June 2017, 21:52 GMT
What code? You're going to have to give many more details here. Please describe precisely what your problem is.
Comment by Alexander Birukov (sanya_rnd) - Saturday, 17 June 2017, 22:53 GMT
Here's simple cmakelists.txt:
cmake_minimum_required(VERSION 3.0)
project( test )

find_package(OpenCV REQUIRED)
find_package(OpenMP REQUIRED)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --std=c++11")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++11")

file( GLOB cpp *.cpp)
add_executable( run main.cpp ${cpp} )
target_link_libraries( run ${OpenCV_LIBS})

Compiling gives:

[100%] Linking CXX executable run
/usr/bin/ld: warning: libhdf5.so.100, needed by /usr/lib/libopencv_hdf.so.3.2.0, not found (try using -rpath or -rpath-link)
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5P_CLS_DATASET_CREATE_ID_g'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Dread'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Dget_create_plist'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Eset_auto2'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Fcreate'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5T_NATIVE_UCHAR_g'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Pset_chunk'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Sselect_hyperslab'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Pget_layout'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5P_CLS_LINK_ACCESS_ID_g'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Pget_chunk'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Tinsert'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Tequal'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5check_version'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Dget_space'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Tget_array_dims2'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Tclose'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Fis_hdf5'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Dopen2'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Dget_type'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5open'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5T_NATIVE_FLOAT_g'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5T_NATIVE_USHORT_g'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Pcreate'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Eget_auto2'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5T_NATIVE_INT32_g'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Pclose'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Tarray_create2'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Screate_simple'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Sget_simple_extent_ndims'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5T_NATIVE_SCHAR_g'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Tcreate'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Dwrite'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Dextend'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Fclose'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Tget_super'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Gclose'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Tget_native_type'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Lexists'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Gcreate2'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Tget_class'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5T_NATIVE_INT_g'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Sclose'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5T_NATIVE_SHORT_g'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5T_NATIVE_DOUBLE_g'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Dclose'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Sget_simple_extent_dims'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Dcreate2'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Pset_deflate'
/usr/lib/libopencv_hdf.so.3.2.0: undefined reference to `H5Fopen'


I'm using gcc-multilib, which is backed with GCC 7.1 right now.
OpenCV on the other hand, compiled with GCC 6.1:
> strings -a /usr/lib/libopencv_imgproc.so.3.2.0 | grep "GCC:"
GCC: (GNU) 6.3.1 20170306
Comment by Antonio Rojas (arojas) - Saturday, 17 June 2017, 22:57 GMT
This has nothing to do with gcc versions, you just need to install hdf5
Comment by Alexander Birukov (sanya_rnd) - Sunday, 18 June 2017, 01:36 GMT
Thanks, any chance adding it to optional dependencies?
Comment by Doug Newgard (Scimmia) - Sunday, 18 June 2017, 01:45 GMT
It already is.

Loading...