Can't compile
I tried to compile gdal-segment, but one error raise every time. So, I couldn't acheive
Follows the code that I used and the error.
What I did that cause this problem? What can I to fix it?
Setting environment
Install gdal
sudo apt update
sudo apt upgrade
sudo apt install gdal-bin python-gdal python3-gdal libgdal-dev
___________________________________________________
## Install OpenCV
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
mkdir src
cd src
git clone https://github.com/opencv/opencv.git
git checkout 3.3.1
git clone https://github.com/opencv/opencv_contrib.git
git checkout 3.3.1
cd opencv
mkdir build
cd build
cmake CMAKE_VERBOSE=1 -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules -DCMAKE_SKIP_RPATH=ON ../
make -j4
sudo make install
___________________________________________________
## Install gdal-segment
cd src
git clone https://github.com/cbalint13/gdal-segment.git
cd gdal-segment
mkdir build
cd build
cmake -DCMAKE_CXX_FLAGS="-std=c++11 -fopenmp" ../ #firt attempt
cmake ../ # second attempt
sudo make
The error:
cmake -DCMAKE_CXX_FLAGS="-std=c++11 -fopenmp" ../
-- Try OpenMP C flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [ ]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-fopenmp=libomp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [/openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-Qopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-xopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [+Oopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-qsmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-mp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Could NOT find OpenMP (missing: OpenMP_C_FLAGS)
CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
Could NOT find OpenCV (missing: hdf) (found version "3.3.1")
Call Stack (most recent call first):
/usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
/usr/local/share/OpenCV/OpenCVConfig.cmake:269 (find_package_handle_standard_args)
CMakeLists.txt:68 (FIND_PACKAGE)
-- Configuring incomplete, errors occurred!
See also "/home/diogocaribe/src/gdal-segment/CMakeFiles/CMakeOutput.log".
See also "/home/diogocaribe/src/gdal-segment/CMakeFiles/CMakeError.log".
- Also for
Could NOT find OpenCV (missing: hdf) (found version "3.3.1")
You need opencv-contrib (opencv's extra package). The rest of openmp related messages are waveable.
But why? I compiled it when I put this "cmake CMAKE_VERBOSE=1 -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules"
Or not?
- Then it sounds like opencv_contrib misses hdf module. Please recompile opencv+opencv_contrib with hdf5. Make sure you have hdf installed and opencv accepts it during cmake.
Do sudo apt-get install hdf5-tools is enough?
I believe you need apt-get install hdf5-dev (the development package). Not familiar with .deb (debian, ubuntu) systems.
Thank you. When I solve the problem I will write it here.