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.

jevois-sdk full build failed

0 votes

Hello,

I try to rebuild all from scratch (not easy install) and i have the following errors :

when  executing this part :

# Configure kernel
cd linux-3.4
make mrproper
cp config-jevois .config
make xconfig # OPTIONAL -- do not mess with these settings unless you know what you are doing
cp .config config-jevois # OPTIONAL: if you modified some configs

=>

velvet@velvet-ixtreme-M3720:~/jevois-sdk/linux-3.4$ make xconfig
  HOSTCC  scripts/basic/fixdep
  CHECK   qt
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
/usr/bin/moc -i scripts/kconfig/qconf.h -o scripts/kconfig/qconf.moc
  HOSTCXX scripts/kconfig/qconf.o
In file included from scripts/kconfig/qconf.cc:48:0:
scripts/kconfig/qconf.moc:14:2: error: #error "This file was generated using the moc from 5.6.1. It"
 #error "This file was generated using the moc from 5.6.1. It"
  ^~~~~

And further when executing this part :

# fails on tbb compilation in waldboost:
# there is a problem in tbb destroy_process_mask, just put an empty inline definition in tbb_misc.h
emacs out/sun8iw5p1/linux/common/buildroot/build/opencv3-3.2.0/3rdparty/tbb/tbb44_20160128oss/src/tbb/tbb_misc.h
./build.sh

=> 

i do

#if __TBB_USE_OS_AFFINITY_SYSCALL
  ...
    void destroy_process_mask();
#else
    ...
    //inline void destroy_process_mask(){} Is this the good fix ?

But I have always this error (when doing manually /jevois-sdk/out/sun8iw5p1/linux/common/buildroot/build/opencv3-3.2.0/make) : 

[ 62%] Linking CXX executable ../../../../bin/opencv_waldboost_detector
/home/velvet/jevois-sdk/out/sun8iw5p1/linux/common/buildroot/build/opencv3-3.2.0/lib/libtbb.so : référence indéfinie vers « tbb::internal::destroy_process_mask() »
collect2: erreur : ld a retourné 1 code d'état d'exécution
modules/xobjdetect/tools/waldboost_detector/CMakeFiles/opencv_waldboost_detector.dir/build.make:100: recipe for target 'bin/opencv_waldboost_detector' failed
make[2]: *** [bin/opencv_waldboost_detector] Error 1

Any idea ?

asked May 19, 2017 in Programmer Questions by stilgar (360 points)

2 Answers

0 votes

Just skip the make xconfig in the kernel, unless you want to change some kernel configuration (most users should not). If you do want, then try a 'make clean' first. But I would recommend keeping that for later, after you get the whole thing to work with the base kernel. As we said: "do not mess with these settings unless you know what you are doing".

for TBB, yes, please see the latest INSTALL posted yesterday, it shows you what the destroy_process_mask() function should be for TBB to compile: indeed it is

inline void destroy_process_mask() { }

We are making a virtualbox with Ubuntu 17.04 now, taking a lot of time because ubuntu17.04 has failed to install on any of the Brix computers we have here. Bummer but slowly getting there on a virtualbox.

answered May 19, 2017 by JeVois (46,580 points)
0 votes
If you want to do a "make config" step, try "make gconfig" instead - you'll get the gnome-based gui instead of the qt one, and it works perfectly on the base ubuntu install.

As for the code changes, my fork has a commit which automates the patches; hopefully JeVois will include them soon.
answered May 20, 2017 by pelrun (2,330 points)
...