Welcome new user! You can search existing questions and answers without registering, but please register to post new questions and receive answers.

JeVois 1.11.0 host bug reports

0 votes
Hi Laurent!

Nothing works with 1.11 release host packages... Reports are included. Everything is reproducible.

I was not able to try to rebuild it yet (lack of time). But, if you are really interested to find what’s going on and want to fix it – I can provide you remote access to my hardware (Ubuntu, SSH, VNC, xRDP etc) with physical webcam attached. Just e-mail me.

BTW, OpenCV package for Ubuntu 18.04 in your repo is still in beta state.

jevois-clean-16.04-1.11.txt

===

user@MS-7592:~$ sudo gdb jevois-daemon
GNU gdb (Ubuntu 8.2-0ubuntu1~16.04.1) 8.2
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from jevois-daemon...done.
(gdb) run
Starting program: /usr/bin/jevois-daemon
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffd929f700 (LWP 1368)]
[New Thread 0x7fffd8a9e700 (LWP 1369)]
[New Thread 0x7fffd829d700 (LWP 1370)]
INF Engine::onParamChange: Using [stdio] hardware (4-pin connector) serial port
INF Engine::onParamChange: No USB serial port used
ERR VideoMapping::videoMappingsFromStream: In file /jevois/config/videomappings.cfg:500: Camera video format not supported by sensor -- SKIPPING.
ERR VideoMapping::videoMappingsFromStream: In file /jevois/config/videomappings.cfg:518: No .so|.py found for JeVois/FaceDetector -- SKIPPING.
INF Engine::postInit: Loaded 60 vision processing modes.
INF Engine::postInit: Initalizing Python...
INF Engine::postInit: Starting camera device /dev/video0
[New Thread 0x7fffd4ca1700 (LWP 1387)]
INF Camera::Camera: [10] V4L2 camera /dev/video0 card UVC Camera (046d:0825) bus usb-0000:00:1d.7-5
INF Engine::postInit: Using display for video output
INF Engine::setFormatInternal: OUT: YUYV 640x300 @ 60fps CAM: YUYV 320x240 @ 60fps MOD: JeVois:DemoSaliency C++
INF Camera::setFormat: Camera set video format to 320x240 YUYV
INF Engine::setFormatInternal: Instantiating dynamic loader for /jevois/modules/JeVois/DemoSaliency/DemoSaliency.so
INFO: JeVois 1.11.0
INFO: Linux version 4.15.0-42-generic
ERR /jevois/modules/JeVois/DemoSaliency/script.cfg:3: FTL SysInfo::getFileString: Cannot read file: /sys/class/thermal/thermal_zone0/temp
ERR /jevois/modules/JeVois/DemoSaliency/script.cfg:3: Unsupported command [info]
FTL SysInfo::getFileString: Cannot read file: /sys/class/thermal/thermal_zone0/temp
INF Engine::setFormatInternal: Module [DemoSaliency] loaded, initialized, and ready.
INF Camera::streamOn: 5 buffers of 153600 bytes allocated
INF READY JEVOIS 1.11.0
[New Thread 0x7fffcbff4700 (LWP 1558)]
[New Thread 0x7fffcb7f3700 (LWP 1559)]
[Thread 0x7fffcb7f3700 (LWP 1559) exited]
[New Thread 0x7fffcaff2700 (LWP 1560)]
[Thread 0x7fffcaff2700 (LWP 1560) exited]
[New Thread 0x7fffca7f1700 (LWP 1561)]
[Thread 0x7fffca7f1700 (LWP 1561) exited]
[New Thread 0x7fffca7f1700 (LWP 1562)]
[New Thread 0x7fffcaff2700 (LWP 1563)]

Thread 10 "jevois-daemon" received signal SIGILL, Illegal instruction.
[Switching to Thread 0x7fffca7f1700 (LWP 1562)]
0x00007fffcf8dcc95 in env_c_lowpass_5_y_dec_y_fewbits_optim (src=<optimized out>, w=160, h=240, dst=<optimized out>, h2=<optimized out>)
    at /home/jv/pack/jevoisbase/src/Components/Saliency/env_c_math_ops.c:104
104    /home/jv/pack/jevoisbase/src/Components/Saliency/env_c_math_ops.c: No such file or directory.

===

jevois-clean-18.04-11.1.txt

===

user@MS-7592:~$ dpkg -l | grep opencv
ii  jevois-opencv                          4.0.0-beta-1ubuntu18.04             amd64        OpenCV 4.0.0-beta configured for use with JeVois smart machine vision
user@MS-7592:~$ gdb jevois-daemon
GNU gdb (Ubuntu 8.1-0ubuntu3) 8.1.0.20180409-git
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from jevois-daemon...done.
(gdb) run
Starting program: /usr/bin/jevois-daemon
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffd6723700 (LWP 4592)]

Thread 1 "jevois-daemon" received signal SIGILL, Illegal instruction.
0x00007ffff7a619ad in std::function<void (jevois::manager::LogLevel const&)>::function<jevois::manager::loglevel::loglevel()::{lambda(jevois::manager::LogLevel const&)#1}, void, void>(jevois::manager::loglevel::loglevel()::{lambda(jevois::manager::LogLevel const&)#1}) (__f=..., this=<optimized out>) at /usr/include/c++/7/bits/std_function.h:695
695            _M_manager = &_My_handler::_M_manager;
(gdb)
asked Dec 18, 2018 in Programmer Questions by NikPok (390 points)

1 Answer

0 votes
yes, I am afraid that we have to end support for 16.04 now.

your problem comes from an ABI mismatch. In short:

- boost, which we use in JeVois, was compiled using gcc-5 in the 16.04 distro

- but opencv 4.0 cannot compile with gcc-5, gcc-6 or later is required

this gives rise to a mess where one compiler is used for opencv and another for jevois. I am guessing you are using gcc-5 by default? You can try to change your default to gcc-6 (see update-alternatives command and help on the web, or just manually update symlinks in /usr/bin so that when you end up typing gcc --version it shows 6.x). Then your problem should go away.

But this is not a clean solution. Your better solution is to switch to ubuntu 18.04 which who'd not suffer from these problems (it does not here on our development machines).
answered Jan 4 by JeVois (42,900 points)
PLEASE, read again ALL my message till the end !!!
It doesn't work on Ubuntu 18.04 !!! And I was trying to use YOUR binaries, NOT custom build = I didn't recompile anything.

AND again, I can provide you remote access to my hardware (Ubuntu 18.04 + Ubuntu 16.04, SSH, VNC, xRDP etc) with physical webcam attached.
...