[Kwiver-users] Recommended version of CMAKE to be used for DIVA installation

Aaron Bray aaron.bray at kitware.com
Mon Jan 15 17:13:23 EST 2018


Thanks for the input Ankit!

I will check it all out and get back to you!

On Jan 15, 2018 1:52 PM, "Ankit Parag Shah" <aps1 at andrew.cmu.edu> wrote:

> Hi all,
>
> @Aaron - many thanks for providing the detailed list of steps.
>
> I am trying to follow these exact same steps from a new clean directory -
> With a prebuilt KWIVER path
>
> clean/DIVA/build/release# cmake ../../src -DCMAKE_BUILD_TYPE=Release
> -Dkwiver_DIR:PATH=../../../../kwiver/build/release/
> -- Looking for your kwiver...
> -- I found your kwiver!
> -- It uses this fletch /home/ankit/KWIVER-Software-Sc
> ripts/fletch/build/rel
> -- You provided a fletch_DIR and a kwiver_DIR, I am going to ignore this
> fletch_DIR and use the fletch_DIR used to build kwiver
> -- I am pulling and building kwant!
> -- Configuring done
> -- Generating done
> -- Build files have been written to: /home/ankit/KWIVER-Software-Sc
> ripts/clean/DIVA/build/release
>
> The above command is successfully completed.
>
> However, compilation fails as follows -
>
> -- Configuring incomplete, errors occurred!
> See also "/home/ankit/KWIVER-Software-Scripts/clean/DIVA/build/releas
> e/kwant-build/CMakeFiles/CMakeOutput.log".
> CMakeFiles/kwant.dir/build.make:106: recipe for target
> 'DIVA-ExternalProject-Stamps/kwant-configure' failed
> make[2]: *** [DIVA-ExternalProject-Stamps/kwant-configure] Error 1
> CMakeFiles/Makefile2:104: recipe for target 'CMakeFiles/kwant.dir/all'
> failed
> make[1]: *** [CMakeFiles/kwant.dir/all] Error 2
> Makefile:83: recipe for target 'all' failed
> make: *** [all] Error 2
>
> These tests are performed post confirmation of the switches required for
> installation in KWIVER build release.
>
> ============
>
> To check on a clean docker image with no software installed prior using
> DIVA directly to compile all the relevant dependencies such as kwiver,
> fletch etc, I ran the following commands.
>
> apt-get update
> yes | apt install wget
> yes | apt install python
> yes | apt install vim
> yes | apt install git
> yes | apt install cmake
> yes | apt install build-essential
> mkdir DIVA
> cd DIVA
> mkdir -p build/release
> mkdir -p build/debug
> git clone https://github.com/Kitware/DIVA src
>
> Then ran the following command from DIVA/build/release path
>
> cmake ../../src -DCMAKE_BUILD_TYPE=Release
>
> Output - As expected clean
> -- The C compiler identification is GNU 5.4.0
> -- The CXX compiler identification is GNU 5.4.0
> -- Check for working C compiler: /usr/bin/cc
> -- Check for working C compiler: /usr/bin/cc -- works
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- Check for working CXX compiler: /usr/bin/c++
> -- Check for working CXX compiler: /usr/bin/c++ -- works
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Detecting CXX compile features
> -- Detecting CXX compile features - done
> -- Found Git: /usr/bin/git (found version "2.7.4")
> -- I am pulling and building fletch!
> -- I am pulling and building kwiver!
> -- I am pulling and building kwant!
> -- Configuring done
> -- Generating done
> -- Build files have been written to: /mnt/sdd/aps/DIVA/build/release
>
> However make -j16 command fails
>
> -- Configuring incomplete, errors occurred!
> See also "/mnt/sdd/aps/DIVA/build/release/kwant-build/
> CMakeFiles/CMakeOutput.log".
> CMakeFiles/kwant.dir/build.make:108: recipe for target
> 'DIVA-ExternalProject-Stamps/kwant-configure' failed
> make[2]: *** [DIVA-ExternalProject-Stamps/kwant-configure] Error 1
> CMakeFiles/Makefile2:181: recipe for target 'CMakeFiles/kwant.dir/all'
> failed
> make[1]: *** [CMakeFiles/kwant.dir/all] Error 2
> Makefile:83: recipe for target 'all' failed
> make: *** [all] Error 2
>
> This error is same as the error with preinstalled KWIVER and a fresh
> install of DIVA repository.
>
> Version of kwant checked out is -
>
> Cloning into 'kwant'...
> Note: checking out 'f53aaaafbd06d7a2c7cbedebfdce94e9dbd83347'.
>
> Info obtained from the CMakeOutput.log file.
>
> All the above steps run for compiling DIVA are located as part bash script
> in a private repository - https://github.com/ankitshah009/KWIVER-Software-
> Scripts which if deemed useful, I could make it public post permission
> from my advisor.
> Kindly let me know how to fix the above issue.
>
> Looking forward to your response.
>
> Kind Regards,
> Ankit Shah
> Masters Student in Language Technologies
> Carnegie Mellon University.
>
> On Sat, Jan 13, 2018 at 9:07 AM, Aaron Bray <aaron.bray at kitware.com>
> wrote:
>
>> CMake version 3.5.1 will work just fine
>>
>> If you are running that cmake command from your intended DIVA build
>> directory (Which should be empty, do not manually build fletch and kwiver
>> to the same target build directory),
>> This will execute the 'Superbuild' control flow in the DIVA CMake files.
>> (A CMake super-build is a project which downloads, configures and builds
>> other projects. )
>>
>> This control flow from your command should return something like this :
>>
>> *The C compiler identification is GNU 5.4.0*
>>
>> *The CXX compiler identification is GNU 5.4.0*
>>
>> *Check for working C compiler: /usr/bin/cc*
>>
>> *Check for working C compiler: /usr/bin/cc -- works*
>>
>> *Detecting C compiler ABI info*
>>
>> *Detecting C compiler ABI info - done*
>>
>> *Detecting C compile features*
>>
>> *Detecting C compile features - done*
>>
>> *Check for working CXX compiler: /usr/bin/c++*
>>
>> *Check for working CXX compiler: /usr/bin/c++ -- works*
>>
>> *Detecting CXX compiler ABI info*
>>
>> *Detecting CXX compiler ABI info - done*
>>
>> *Detecting CXX compile features*
>>
>> *Detecting CXX compile features - done*
>>
>> *Found Git: /usr/bin/git (found version "2.7.4") *
>>
>> *I am pulling and building fletch!*
>>
>> *I am pulling and building kwiver!*
>>
>> *Configuring done*
>>
>> This is telling you that it will create a Makefile that will download the
>> fletch, kwiver, and kwant source code and build them each, and then build
>> the DIVA code base
>>
>> The Eigen Error mentioned is usually due to running CMake on KWIVER
>> source (from with the KWIVER build directory) (Which should be empty and a
>> different folder or a subfolder from the DIVA build directory) and not
>> providing a fletch_DIR for the KWIVER CMake script to use during it's
>> configuration process
>>
>> Did you successfully build Fletch and KWIVER manually?
>>
>> If so, you should run CMake for DIVA, from an empty build directory like
>> so, to inform the DIVA super build of the location of your  KWIVER build
>> directory
>>
>> $ cmake ../../src -DCMAKE_BUILD_TYPE=Release -Dkwiver_DIR:PATH=<path/to/kwiver/build/dir>
>>
>> CMake will return something like this:
>>
>>
>> *Looking for your kwiver...*
>>
>> *I found your kwiver!*
>> *It uses this fletch <path to the fletch build directory>*
>>
>> *I am pulling and building kwant!*
>>
>> *Configuring done*
>>
>>
>>
>> I suggest using the cmake gui to help see what directories and CMake
>> options are set to help get your build set up
>>
>> (I recommend checking the 'Grouped' and 'Advanced' options in the GUI)
>>
>>
>> you can get it with
>>
>> $sudo apt-get install cmake-qt-gui
>>
>>
>> Thanks,
>>
>>
>>   Aaron
>>
>>
>> On Sat, Jan 13, 2018 at 3:01 AM, Ankit Parag Shah <aps1 at andrew.cmu.edu>
>> wrote:
>>
>>> Hi all,
>>>
>>> While building DIVA project using the following steps -
>>> https://github.com/Kitware/DIVA, with a fresh Kwiver and fletch
>>> installation steps, I am facing errors while performing the following
>>> installation step.
>>>
>>> $ cmake ../../src -DCMAKE_BUILD_TYPE=Release
>>>
>>> Error is as follows: -
>>>
>>> CMake Error at /usr/share/cmake-3.5/Modules/F
>>> indPackageHandleStandardArgs.cmake:148 (message):
>>>   Could NOT find Eigen3 (missing: EIGEN3_INCLUDE_DIR EIGEN3_VERSION_OK)
>>>   (Required is at least version "2.91.0")
>>> Call Stack (most recent call first):
>>>   /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388
>>> (_FPHSA_FAILURE_MESSAGE)
>>>   CMake/FindEigen3.cmake:81 (find_package_handle_standard_args)
>>>   CMake/kwiver-depends-Eigen.cmake:3 (find_package)
>>>   CMake/kwiver-depends.cmake:4 (include)
>>>   CMakeLists.txt:138 (include)
>>>
>>> Upon researching on Google about the error caused and understanding use
>>> of EIGEN, there are various hacks suggested to overcome the problem. The
>>> problem seems to be within CMAKE which is not able to find
>>> EIGEN3_INCLUDE_DIR in path variable.
>>>
>>> Currently, I am using cmake 3.5.1, may I ask whether it is recommended
>>> to perform hacks or it is better to install latest version of cmake
>>> available going forward.
>>>
>>> Looking forward to your response.
>>>
>>> Kind Regards,
>>> Ankit Shah
>>> Masters Student in Language Technologies
>>> Carnegie Mellon University.
>>>
>>> _______________________________________________
>>> Kwiver-users mailing list
>>> Kwiver-users at public.kitware.com
>>> https://public.kitware.com/mailman/listinfo/kwiver-users
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://public.kitware.com/pipermail/kwiver-users/attachments/20180115/3ed99a4a/attachment-0001.html>


More information about the Kwiver-users mailing list