Welcome new user! You can search existing questions and answers without registering, but please register to post new questions and receive answers. Note that due to large amounts of spam attempts, your first three posts will be manually moderated, so please be patient.
We have moved to a new forum at http://jevois.usc.edu, please check it out. The forum at jevois.org/qa will not allow new user registrations but is maintained alive for its useful past questions and answers.
Welcome to JeVois Tech Zone, where you can ask questions and receive answers from other members of the community.

EASY INSTALL OPTION fails

0 votes

I followed the "Easy Install Option" after at "Compiling JeVois library and base apps for host computer" I got the following message for the command "./rebuild-host.sh":

david@ud1:~$ cd jevois
david@ud1:~/jevois$ sudo ./rebuild-host.sh
[sudo] password for david: 
CMake Warning at CMakeLists.txt:34 (message):
  You should set JEVOIS_SRC_ROOT environment variable to the root of your
  jevois source tree, needed to find the linux kernel, buildroot,
  cross-compilers, etc to install on the platform hardware.  Using default:
  /home/david/jevois


-- JEVOIS_LDEBUG_ENABLE: OFF
-- JEVOIS_TRACE_ENABLE: OFF
-- JEVOIS_USE_SYNC_LOG: OFF
-- JEVOIS_LOG_TO_FILE: OFF
-- HOST_IS_RPI3: OFF
CMake Warning at CMakeLists.txt:74 (message):
  You should set JEVOIS_ROOT environment variable to the root of where JeVois
  modules and config files will be installed.  Using default: /jevois


-- JeVois version 1.0
-- JEVOIS_SRC_ROOT: /home/david/jevois
-- JEVOIS_PLATFORM: OFF
-- JEVOIS_VENDOR: JeVois
-- Install prefix for executables: /usr/local
-- Host path to jevois modules root: /jevois
-- The C compiler identification is GNU 6.2.0
-- The CXX compiler identification is GNU 6.2.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
CMake Error at /usr/share/cmake-3.5/Modules/FindSubversion.cmake:110 (message):
  Command "/usr/bin/svn info /home/david/jevois" failed with output:

  svn: E155007: '/home/david/jevois' is not a working copy

Call Stack (most recent call first):
  CMakeLists.txt:250 (Subversion_WC_INFO)


-- Configuring incomplete, errors occurred!
See also "/home/david/jevois/hbuild/CMakeFiles/CMakeOutput.log".
david@ud1:~/jevois$ 

asked Feb 20, 2017 in Programmer Questions by unga (300 points)

3 Answers

0 votes
I looked one of previous posting and commented SUBVERSION at lines 248 to 254.  Now I get the following errors:

david@ud1:~/jevois$ sudo ./rebuild-host.sh[sudo] password for david:
CMake Warning at CMakeLists.txt:34 (message):
  You should set JEVOIS_SRC_ROOT environment variable to the root of your
  jevois source tree, needed to find the linux kernel, buildroot,
  cross-compilers, etc to install on the platform hardware.  Using default:
  /home/david/jevois

-- JEVOIS_LDEBUG_ENABLE: OFF
-- JEVOIS_TRACE_ENABLE: OFF
-- JEVOIS_USE_SYNC_LOG: OFF
-- JEVOIS_LOG_TO_FILE: OFF
-- HOST_IS_RPI3: OFF
CMake Warning at CMakeLists.txt:74 (message):
  You should set JEVOIS_ROOT environment variable to the root of where JeVois
  modules and config files will be installed.  Using default: /jevois

-- JeVois version 1.0
-- JEVOIS_SRC_ROOT: /home/david/jevois
-- JEVOIS_PLATFORM: OFF
-- JEVOIS_VENDOR: JeVois
-- Install prefix for executables: /usr/local
-- Host path to jevois modules root: /jevois
-- The C compiler identification is GNU 6.2.0
-- The CXX compiler identification is GNU 6.2.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
-- Configuring done
-- Generating done
-- Build files have been written to: /home/david/jevois/hbuild
Scanning dependencies of target jevois
[  2%] Building CXX object CMakeFiles/jevois.dir/src/jevois/Component/Manager.C.o
[  4%] Building CXX object CMakeFiles/jevois.dir/src/jevois/Component/Component.C.o
[  6%] Building CXX object CMakeFiles/jevois.dir/src/jevois/Component/ParameterDef.C.o
[  8%] Building CXX object CMakeFiles/jevois.dir/src/jevois/Component/ParameterRegistry.C.o
[ 10%] Building CXX object CMakeFiles/jevois.dir/src/jevois/Core/Camera.C.o
[ 12%] Building CXX object CMakeFiles/jevois.dir/src/jevois/Core/Engine.C.o
In file included from /home/david/jevois/src/jevois/Core/Engine.C:21:0:
/home/david/jevois/include/jevois/Core/MovieInput.H:23:55: fatal error: opencv2/videoio.hpp: No such file or directory
 #include <opencv2/videoio.hpp> // for cv::VideoCapture
                                                       ^
compilation terminated.
CMakeFiles/jevois.dir/build.make:182: recipe for target 'CMakeFiles/jevois.dir/src/jevois/Core/Engine.C.o' failed
make[2]: *** [CMakeFiles/jevois.dir/src/jevois/Core/Engine.C.o] Error 1
make[2]: *** Waiting for unfinished jobs....
CMakeFiles/Makefile2:141: recipe for target 'CMakeFiles/jevois.dir/all' failed
make[1]: *** [CMakeFiles/jevois.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
david@ud1:~/jevois$
answered Feb 20, 2017 by unga (300 points)
+1 vote
The easy install option didn't work for me either with fresh Ubuntu 16.10 x64 install. Removing the subversion lines was necessary, building opencv3.2 was necessary, which seems to be your issue here. Line 214 of the INSTALL.TXT file "./reinstall.sh # do this only once, will download some contributed packages and patch them" is also bad. You need to comment out the lines that DELETE files in that script. Either that or move the cvEyeTracker folder out, run that script, and move it back to the directory. The version that it is supposed to pull in when you uncomment the lines that are commented is no good, and if you lose that folder you lose a bunch of headers other projects reference.

Those are the two things I had to do to get jevois and jevois base to build properly. I think the easy install is mostly only useful for not having to build the kernel, assuming that works. I haven't had a chance to try yet. Currently trying to get it to all run and compile on an RPi3, much worse. Good luck and ask if you have any more issues.
answered Feb 20, 2017 by gothmag (480 points)
+1 vote
  • You should comment (start with #) line 248 to 254 of ~/jevois/CMakeLists.txt
  • Then insert at line 51 of ~/jevois-easy-install.sh

####################################################################################################
read -p "Compile OpenCV 3.2 [Y/n]? "
if [ "X$REPLY" != "Xn" ]; then
    cd opencv32
    mkdir build
    cd build
    cmake -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DWITH_TBB=ON -DWITH_V4L=ON -DWITH_QT=ON -DWITH_OPENGL=OFF -DWITH_VTK=OFF -DWITH_CUDA=OFF -DBUILD_opencv_python2=OFF -DBUILD_opencv_python3=OFF -DWITH_PYTHON=OFF -DBUILD_EXAMPLES=ON -DINSTALL_C_EXAMPLES=OFF -DOPENCV_EXTRA_MODULES_PATH=~/opencv32/opencv_contrib-3.2.0/modules -DBUILD_opencv_hdf=OFF -DENABLE_PRECOMPILED_HEADERS=Off ../opencv-3.2.0
    make -j 2
    cd ~/
fi

  • Then modify ~/jevois-easy-install.sh next lines as

read -p "Install OpenCV 3.2 to /usr/local [Y/n]? "
if [ "X$REPLY" != "Xn" ]; then
    cd ~/opencv32/build
    sudo make install
    cd ~/
fi

answered Feb 23, 2017 by wibauxl (580 points)
Now I am getting error at INSTALL line #217, i.e. at step "./rebuild-host.sh":

david@ud1:~/jevoisbase$ ./rebuild-host.sh
-- JeVois version 1.0
-- JEVOIS_SRC_ROOT: /home/david/jevois
-- JEVOIS_PLATFORM: OFF
-- JEVOIS_VENDOR: JeVois
-- Install prefix for executables: /usr/local
-- Host path to jevois modules root: /jevois
-- The C compiler identification is GNU 6.2.0
-- The CXX compiler identification is GNU 6.2.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
-- Adding compilation directives for module BurnTest base src/Modules
-- Adding compilation directives for module Convert base src/Modules
-- Adding compilation directives for module DemoArUco base src/Modules
-- Adding compilation directives for module DemoBackgroundSubtract base src/Modules
-- Adding compilation directives for module DemoCPUGPU base src/Modules
-- Adding compilation directives for module DemoEyeTracker base src/Modules
-- Adding compilation directives for module DemoGPU base src/Modules
-- Adding compilation directives for module DemoNeon base src/Modules
-- Adding compilation directives for module DemoQRcode base src/Modules
-- Adding compilation directives for module DemoSalGistFaceObj base src/Modules
-- Adding compilation directives for module DemoSaliency base src/Modules
-- Adding compilation directives for module DenseSift base src/Modules
-- Adding compilation directives for module EdgeDetection base src/Modules
-- Adding compilation directives for module EdgeDetectionX4 base src/Modules
-- Adding compilation directives for module JeVoisIntro base src/Modules
-- Adding compilation directives for module ObjectDetect base src/Modules
-- Adding compilation directives for module ObjectTracker base src/Modules
-- Adding compilation directives for module OpticalFlow base src/Modules
-- Adding compilation directives for module PassThrough base src/Modules
-- Adding compilation directives for module RoadNavigation base src/Modules
-- Adding compilation directives for module SaliencyGist base src/Modules
-- Adding compilation directives for module SaliencySURF base src/Modules
-- Adding compilation directives for module SalientRegions base src/Modules
-- Adding compilation directives for module SaveVideo base src/Modules
-- Adding compilation directives for module SuperPixelSeg base src/Modules
-- Configuring done
CMake Error at /jevois/config/JeVois.cmake:168 (add_library):
  Cannot find source file:

    /home/david/jevoisbase/Contrib/cvEyeTracker-1.2.5/ransac_ellipse.cpp

  Tried extensions .c .C .c++ .cc .cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp
  .hxx .in .txx
Call Stack (most recent call first):
  CMakeLists.txt:43 (jevois_setup_library)


-- Generating done
-- Build files have been written to: /home/david/jevoisbase/hbuild
david@ud1:~/jevoisbase$
This is coming from something not working during the 'git pull' which is part of ~/jevoisbase/Contrib/reinstall.sh: the cvEyeTracker folder is not being pulled from jevois github repository as it should.
I had to change 'git pull' by 'git reset --hard' in that file.
Then the cvEyeTracker gets pulled and the compilation can start.

I am now stuck by a compilation error on ~/jevoisbase/src/Components/ObjectRecognition/ObjectRecognition.C:

In file included from /home/lwx/jevoisbase/Contrib/tiny-dnn/tiny_dnn/core/kernels/conv2d_op.h:56:0,
                 from /home/lwx/jevoisbase/Contrib/tiny-dnn/tiny_dnn/layers/convolutional_layer.h:15,
                 from /home/lwx/jevoisbase/Contrib/tiny-dnn/tiny_dnn/tiny_dnn.h:24,
                 from /home/lwx/jevoisbase/src/Components/ObjectRecognition/ObjectRecognition.C:22:
/home/lwx/jevoisbase/Contrib/tiny-dnn/tiny_dnn/core/kernels/conv2d_op_nnpack.h: In function ‘void tiny_dnn::kernels::conv2d_op_nnpack(const tensor_t&, const vec_t&, const vec_t&, tiny_dnn::tensor_t&, const tiny_dnn::core::conv_params&)’:
/home/lwx/jevoisbase/Contrib/tiny-dnn/tiny_dnn/core/kernels/conv2d_op_nnpack.h:70:36: error: cannot convert ‘pthreadpool_t {aka pthreadpool*}’ to ‘nnp_activation’ for argument ‘13’ to ‘nnp_status nnp_convolution_inference(nnp_convolution_algorithm, nnp_convolution_transform_strategy, size_t, size_t, nnp_size, nnp_padding, nnp_size, nnp_size, const float*, const float*, const float*, float*, nnp_activation, const void*, pthreadpool_t, nnp_profile*)’
     output_ptr, threadpool, profile);

Fixing scripts is Ok for me, diving into the code to fix it is beyond my skills...
Having said that, the 'git reset --hard' may have damaged my local repository or patched files incorrectly...

If anybody has any clue, please tell us!
so sorry for the delay, I am in Japan until Sunday night and will send you all some fixes early next week. Thanks for your patience with these glitches.
Thank you for your patience. A new version (1.0b) of the easy install package has been uploaded on Feb 28, 2017. Please see updated instructions at

https://github.com/jevois/jevois/blob/master/INSTALL

under "EASY INSTALL OPTION"

Please also see this youtube video that runs through the easy install process:

https://www.youtube.com/watch?v=N-lskSvOvsA
...