Closed abhisheknaik96 closed 6 years ago
Hi @abhisheknaik96 , I think you can try to debug with gdb, find the coredump file under /apollo/data/core/ with name core_dreamview.$PID. if you see logs like:
@in_dev_docker:/apollo$ gdb bazel-bin/modules/dreamview/dreamview data/core/core_dreamview.378
GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.3) 7.7.1
Copyright (C) 2014 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 bazel-bin/modules/dreamview/dreamview...done.
warning: exec file is newer than core file.
[New LWP 378]
[New LWP 379]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
warning: the debug information found in "/home/caros/secure_upgrade/depend_lib/libyaml-cpp.so.0.5.1" does not match "/home/caros/secure_upgrade/depend_lib/libyaml-cpp.so.0.5" (CRC mismatch).
Core was generated by `/apollo/bazel-bin/modules/dreamview/dreamview --flagfile=/apollo/modules/dreamv'.
Program terminated with signal SIGILL, Illegal instruction.
#0 0x00007f79ebd32bec in double boost::math::detail::erf_inv_imp<double, boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy> >(double const&, double const&, boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy> const&, mpl_::int_<64> const*) () from /usr/local/lib/libpcl_sample_consensus.so.1.7
(gdb) bt
#0 0x00007f79ebd32bec in double boost::math::detail::erf_inv_imp<double, boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy> >(double const&, double const&, boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy> const&, mpl_::int_<64> const*) () from /usr/local/lib/libpcl_sample_consensus.so.1.7
#1 0x00007f79ebcf7f1e in _GLOBAL__sub_I_sac.cpp () from /usr/local/lib/libpcl_sample_consensus.so.1.7
#2 0x00007f79f3e1a2da in call_init (l=<optimized out>, argc=argc@entry=2, argv=argv@entry=0x7ffc7bc11c78, env=env@entry=0x7ffc7bc11c90) at dl-init.c:78
#3 0x00007f79f3e1a3c3 in call_init (env=<optimized out>, argv=<optimized out>, argc=<optimized out>, l=<optimized out>) at dl-init.c:36
#4 _dl_init (main_map=0x7f79f402e1c8, argc=2, argv=0x7ffc7bc11c78, env=0x7ffc7bc11c90) at dl-init.c:126
#5 0x00007f79f3e0b29a in _dl_start_user () from /lib64/ld-linux-x86-64.so.2
#6 0x0000000000000002 in ?? ()
#7 0x00007ffc7bc134bd in ?? ()
#8 0x00007ffc7bc134eb in ?? ()
#9 0x0000000000000000 in ?? ()
(gdb) q
@in_dev_docker:/apollo$ addr2line -C -f -e /usr/local/lib/libpcl_sample_consensus.so.1.7.2 0x375bec
double boost::math::detail::erf_inv_imp<double, boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy> >(double const&, double const&, boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy> const&, mpl_::int_<64> const*)
??:?
then take a seat at the same row with me, waiting someone else to come by.
And attach more info:
~/playground/apollo$ git rev-parse HEAD
321bc25633fe2115e8ea4b2e68555c8c0d301b41
~/playground/apollo$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
apolloauto/apollo dev-x86_64-20180320_1118 6a23927e28c3 7 days ago 6.92GB
apolloauto/apollo yolo3d_volume-x86_64-latest 562d2b2b5a71 11 days ago 70.6MB
apolloauto/apollo map_volume-sunnyvale_big_loop-latest 80aca30fa08a 3 weeks ago 1.3GB
apolloauto/apollo localization_volume-x86_64-latest be947abaa650 2 months ago 5.74MB
apolloauto/apollo map_volume-sunnyvale_loop-latest 36dc0d1c2551 2 months ago 906MB
build cmd:
in_dev_docker:/apollo$ ./apollo.sh build_no_perception dbg
(a_face_full_with_expectation.jpg)
GDB output:
Reading symbols from bazel-bin/modules/dreamview/dreamview...done.
warning: exec file is newer than core file.
[New LWP 15760]
[New LWP 15761]
warning: Error reading shared library list entry at 0x5b524652564e0050
warning: Error reading shared library list entry at 0x59205b4b464b5c47
Core was generated by `/apollo/bazel-bin/modules/dreamview/dreamview --flagfile=/apollo/modules/dreamv'.
Program terminated with signal SIGILL, Illegal instruction.
#0 0x00007f516858bbec in ?? ()
More info:
$ git rev-parse HEAD
ea7ced8a0b07688d5efef57edd3c86e1444241a3
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
apolloauto/apollo dev-x86_64-20180320_1118 6a23927e28c3 13 days ago 6.92GB
apolloauto/apollo yolo3d_volume-x86_64-latest 562d2b2b5a71 2 weeks ago 70.6MB
apolloauto/apollo dev-x86_64-20180315_1337 fb415c0c0757 2 weeks ago 6.92GB
apolloauto/apollo map_volume-sunnyvale_big_loop-latest 80aca30fa08a 4 weeks ago 1.3GB
apolloauto/apollo localization_volume-x86_64-latest be947abaa650 2 months ago 5.74MB
apolloauto/apollo map_volume-sunnyvale_loop-latest 36dc0d1c2551 2 months ago 906MB
apolloauto/apollo release-x86_64-v2.0.1 d778cd0bdb67 2 months ago 7.19GB
registry.docker-cn.com/apolloauto/apollo release-x86_64-v2.0.1 d778cd0bdb67 2 months ago 7.19GB
Thanks @zhxt (another_face_full_of_expectation.jpg)
@abhisheknaik96 , could your please paste your backtrace?
First, move all your dreamview coredumps to a backup dir , then rerun bootstrap.sh. Debug with the "latest" coredump file, paste the gdb backtrace (get it with command bt
).
I found a similar backtrace here: https://github.com/ethz-asl/elevation_mapping/issues/33, which says: " it is related to a problem with PCL/Boost and Debug mode/C++11."
Not sure if it's the reason. Really strange, same source, same docker env, same pcl lib, same build command... (a_face_full_with_confusion.jpg)
@abhisheknaik96 haha~~~, I just got dreamview worked. I build pcl with c++11 enabled, and replace the libs under /usr/local/lib. If you find something related libpcl in your backtrace, then you can have a try.
(I will get my little chair back :P ) (a_face_full_with_happyness.jpg)
@abhisheknaik96 Moreover, If you see error like this: "unix:///var/run/supervisor.sock no such file", Just hack the bootscript.sh to make sure the supervisorctl command use the some config file with supervisord.
git diff
diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh
index a66d4b5..b9749f0 100755
--- a/scripts/bootstrap.sh
+++ b/scripts/bootstrap.sh
@@ -35,10 +35,10 @@ function start() {
# Start roscore.
bash scripts/roscore.sh start
# Start monitor.
- supervisorctl start monitor > /dev/null
+ supervisorctl -c /apollo/modules/tools/supervisord/dev.conf start monitor > /dev/null
# Start dreamview.
bash scripts/voice_detector.sh start
- supervisorctl start dreamview > /dev/null
+ supervisorctl -c /apollo/modules/tools/supervisord/dev.conf start dreamview > /dev/null
echo "Dreamview is running at http://localhost:8888"
}
Good luck!
@zhxt greatly appreciated your help and contribution!! (a_face_full_with_gratitude.jpg)
@abhisheknaik96 Would you kindly let us know if you need any further assistance after trying out @zhxt suggestion?
@zhxt Thanks for that! @vlin17 I'm trying it out a few things, I'll let you know asap.
@vlin17 My pleasure, and happy to help :D (a_face_full_with_shyness.jpg)
@abhisheknaik96 FYI (build pcl):
Inside docker:
(to keep pcl in host, we save pcl under /apollo)
cd /apollo
git clone https://github.com/PointCloudLibrary/pcl.git
git checkout -b 1.7.2 pcl-1.7.2
then hack CMakeLists.txt with :
~/playground/apollo/pcl$ git diff
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f0a5600..42c182e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -7,6 +7,15 @@ endif()
set(CMAKE_CONFIGURATION_TYPES "Debug;Release" CACHE STRING "possible configurations" FORCE)
+if (CMAKE_VERSION VERSION_LESS "3.1")
+# if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
+ message("Build with c++11 support")
+# endif ()
+else ()
+ set (CMAKE_CXX_STANDARD 11)
+endif ()
+
# In case the user does not setup CMAKE_BUILD_TYPE, assume it's RelWithDebInfo
if("${CMAKE_BUILD_TYPE}" STREQUAL "")
set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "build type default to RelWithDebInfo, set to Release to improve performance" FORCE)
then build with:
cd pcl
mkdir build
cd build
cmake ..
(We don't know the parameters that Apollo used, so we keep it by default)
make
#backup pcl lib
mkdir -p /usr/local/lib/pcl.origin
mv /usr/local/lib/libpcl* /usr/local/lib/pcl.origin
#replace with our build
cp -a lib/* /usr/local/lib/
ldconfig
then, let bootstrap.sh fly to see what will happen.
@xiaoxq hi, could you please confirm that if this lib https://apollocache.blob.core.windows.net/apollo-docker/pcl-1.7_x86.tar.gz was built with c++11 enabled or not? Thanks!
update:
add the missing make
command.
could you please confirm that if this lib https://apollocache.blob.core.windows.net/apollo-docker/pcl-1.7_x86.tar.gz was built with c++11 enabled or not? Thanks!
Yes, this lib has c++11 enabled; otherwise, unit tests would crash.
@vlin17 okay,thanks,good to know. So there may be some other reason.
@vlin17 Hi, today I have seen another developer(@zhewu from IRC channel) whom has the similar gdb backtrace with me, and solved the problem by rebuilding lib pcl.
I had dig a little bit and found that, the pcl lib shipped with docker image is compiled with FMA3 instruction set.
(gdb) r
Starting program: /home/zhxt/.cache/bazel/_bazel_zhxt/540135163923dd7d5820f3ee4b306b32/execroot/apollo/bazel-out/local-dbg/bin/modules/dreamview/dreamview --flagfile=modules/dreamview/conf/dreamview.conf --log_dir=/apollo/data/log
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
warning: the debug information found in "/home/caros/secure_upgrade/depend_lib/libyaml-cpp.so.0.5.1" does not match "/home/caros/secure_upgrade/depend_lib/libyaml-cpp.so.0.5" (CRC mismatch).
[New Thread 0x7fffc9bdd700 (LWP 363)]
Program received signal SIGILL, Illegal instruction.
0x00007fffefd02bec in double boost::math::detail::erf_inv_imp<double, boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy> >(double const&, double const&, boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy> const&, mpl_::int_<64> const*) ()
from /usr/local/lib/libpcl_sample_consensus.so.1.7
(gdb) bt
#0 0x00007fffefd02bec in double boost::math::detail::erf_inv_imp<double, boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy> >(double const&, double const&, boost::math::policies::policy<boost::math::policies::promote_float<false>, boost::math::policies::promote_double<false>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy> const&, mpl_::int_<64> const*) ()
from /usr/local/lib/libpcl_sample_consensus.so.1.7
#1 0x00007fffefcc7f1e in _GLOBAL__sub_I_sac.cpp ()
from /usr/local/lib/libpcl_sample_consensus.so.1.7
#2 0x00007ffff7dea2da in call_init (l=<optimized out>, argc=argc@entry=3,
argv=argv@entry=0x7fffffffe1d8, env=env@entry=0x7fffffffe1f8)
at dl-init.c:78
#3 0x00007ffff7dea3c3 in call_init (env=<optimized out>,
---Type <return> to continue, or q <return> to quit---
argv=<optimized out>, argc=<optimized out>, l=<optimized out>)
at dl-init.c:36
#4 _dl_init (main_map=0x7ffff7ffe1c8, argc=3, argv=0x7fffffffe1d8,
env=0x7fffffffe1f8) at dl-init.c:126
#5 0x00007ffff7ddb29a in _dl_start_user () from /lib64/ld-linux-x86-64.so.2
#6 0x0000000000000003 in ?? ()
#7 0x00007fffffffe486 in ?? ()
#8 0x00007fffffffe50f in ?? ()
#9 0x00007fffffffe540 in ?? ()
#10 0x0000000000000000 in ?? ()
After disassemble, I got this:
=> 0x00007fffefd02bec <+604>: vfmadd213sd 0x4567e3(%rip),%xmm1,%xmm5 # 0x7ffff01593d8
VFMADD213SD is one instruction of the FMA3 Instruction Set. "Intel introduced hardware FMA3 in processors based on Haswell during 2013."
Which means it can not be run on a CPU earlier than Haswell architecture.
Tears flow down with knowing the truth, it's time to buy a new generation laptop :P (a_face_with_tears_of_joy.jpg)
@zhxt I also had the same issue and pcl lib error when I ran dev_start.sh -> dev_into.sh -> bootstrap.sh. I checked my CPU and it was indeed earlier than Haswell architecture.
However, when I ran release_start.sh, everything worked. Dreamview was running on localhost:8888, and I was able to replay the demo in Dreamview.
@tlin051 Ah-ha, I had tried, that's true dreamview in the release docker works fine even on a CPU does not support FMA3.
Things become interesting. But engineers never give up finding the truth. :D
So, here is what I found:
zhxt@in_dev_docker:/apollo$ sha1sum /usr/local/lib/libpcl_sample_consensus.so.1.7.2
24d2ac10c8f62f832603b5b4c0c881c3b3d73d5a /usr/local/lib/libpcl_sample_consensus.so.1.7.2
zhxt@in_release_docker:/apollo$ sha1sum /usr/local/lib/libpcl_sample_consensus.so.1.7.2
24d2ac10c8f62f832603b5b4c0c881c3b3d73d5a /usr/local/lib/libpcl_sample_consensus.so.1.7.2
# in dev docker
zhxt@in_dev_docker:/apollo/bazel-bin/modules/dreamview$ file dreamview
dreamview: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=4893b71f07b28c09505dbaf2a950b291b86a541a, not stripped
zhxt@in_dev_docker:/apollo/bazel-bin/modules/dreamview$ md5sum dreamview
221cd5882882dd068fcf20247afd57bf dreamview
zhxt@in_dev_docker:/apollo/bazel-bin/modules/dreamview$ sha1sum dreamview
726e3e9b387e32ae5c2ea0754cec306805a961ff dreamview
zhxt@in_dev_docker:/apollo/bazel-bin/modules/dreamview$ readelf -d dreamview
Dynamic section at offset 0xfb1678 contains 82 entries:
Tag Type Name/Value
0x0000000000000001 (NEEDED) Shared library: [libactionlib.so]
0x0000000000000001 (NEEDED) Shared library: [libcpp_common.so]
0x0000000000000001 (NEEDED) Shared library: [libcv_bridge.so]
0x0000000000000001 (NEEDED) Shared library: [libeigen_conversions.so]
0x0000000000000001 (NEEDED) Shared library: [libfastcdr.so]
0x0000000000000001 (NEEDED) Shared library: [libfastrtps.so]
0x0000000000000001 (NEEDED) Shared library: [liborocos-kdl.so.1.3]
0x0000000000000001 (NEEDED) Shared library: [librosbag.so]
0x0000000000000001 (NEEDED) Shared library: [librosbag_storage.so]
0x0000000000000001 (NEEDED) Shared library: [librosconsole.so]
0x0000000000000001 (NEEDED) Shared library: [librosconsole_backend_interface.so]
0x0000000000000001 (NEEDED) Shared library: [librosconsole_log4cxx.so]
0x0000000000000001 (NEEDED) Shared library: [librosconsole_print.so]
0x0000000000000001 (NEEDED) Shared library: [libroscpp.so]
0x0000000000000001 (NEEDED) Shared library: [libroscpp_serialization.so]
0x0000000000000001 (NEEDED) Shared library: [libroslz4.so]
0x0000000000000001 (NEEDED) Shared library: [librostime.so]
0x0000000000000001 (NEEDED) Shared library: [libtf2.so]
0x0000000000000001 (NEEDED) Shared library: [libtf2_ros.so]
0x0000000000000001 (NEEDED) Shared library: [libtopic_tools.so]
0x0000000000000001 (NEEDED) Shared library: [libxmlrpcpp.so]
0x0000000000000001 (NEEDED) Shared library: [libleveldb.so.1]
0x0000000000000001 (NEEDED) Shared library: [libboost_thread.so.1.54.0]
0x0000000000000001 (NEEDED) Shared library: [libboost_system.so.1.54.0]
0x0000000000000001 (NEEDED) Shared library: [libpcl_common.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_features.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_filters.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_io_ply.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_io.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_kdtree.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_keypoints.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_octree.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_outofcore.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_people.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_recognition.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_registration.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_sample_consensus.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_search.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_segmentation.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_surface.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_tracking.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libpcl_visualization.so.1.7]
0x0000000000000001 (NEEDED) Shared library: [libjpeg.so.8]
0x0000000000000001 (NEEDED) Shared library: [libtiff.so.5]
0x0000000000000001 (NEEDED) Shared library: [libpng12.so.0]
0x0000000000000001 (NEEDED) Shared library: [libjasper.so.1]
0x0000000000000001 (NEEDED) Shared library: [libz.so.1]
0x0000000000000001 (NEEDED) Shared library: [libboost_filesystem.so.1.54.0]
0x0000000000000001 (NEEDED) Shared library: [libpthread.so.0]
0x0000000000000001 (NEEDED) Shared library: [librt.so.1]
0x0000000000000001 (NEEDED) Shared library: [libm.so.6]
0x0000000000000001 (NEEDED) Shared library: [libdl.so.2]
0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6]
0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x0000000000000001 (NEEDED) Shared library: [ld-linux-x86-64.so.2]
0x000000000000000f (RPATH) Library rpath: [$ORIGIN/../../_solib_k8/_U@ros_S_S_Cros_Ucommon___Uexternal_Sros_Slib]
0x000000000000000c (INIT) 0x46eb78
0x000000000000000d (FINI) 0xef4300
0x0000000000000019 (INIT_ARRAY) 0x157ecc0
0x000000000000001b (INIT_ARRAYSZ) 1320 (bytes)
0x000000000000001a (FINI_ARRAY) 0x157f1e8
0x000000000000001c (FINI_ARRAYSZ) 8 (bytes)
0x000000006ffffef5 (GNU_HASH) 0x4002d0
0x0000000000000005 (STRTAB) 0x428370
0x0000000000000006 (SYMTAB) 0x409aa0
0x000000000000000a (STRSZ) 226923 (bytes)
0x000000000000000b (SYMENT) 24 (bytes)
0x0000000000000015 (DEBUG) 0x0
0x0000000000000003 (PLTGOT) 0x15b1be8
0x0000000000000002 (PLTRELSZ) 14592 (bytes)
0x0000000000000014 (PLTREL) RELA
0x0000000000000017 (JMPREL) 0x46b278
0x0000000000000007 (RELA) 0x462518
0x0000000000000008 (RELASZ) 36192 (bytes)
0x0000000000000009 (RELAENT) 24 (bytes)
0x0000000000000018 (BIND_NOW)
0x000000006ffffffb (FLAGS_1) Flags: NOW
0x000000006ffffffe (VERNEED) 0x462298
0x000000006fffffff (VERNEEDNUM) 11
0x000000006ffffff0 (VERSYM) 0x45f9dc
0x0000000000000000 (NULL) 0x0
# in release docker
zhxt@in_release_docker:/apollo/modules/dreamview$ file dreamview
dreamview: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=e9159a4dbbee181ae536ac220141a253ec25eb9f, not stripped
zhxt@in_release_docker:/apollo/modules/dreamview$ md5sum dreamview
6d56174619d5583fa5764f1ce89e1642 dreamview
zhxt@in_release_docker:/apollo/modules/dreamview$ sha1sum dreamview
851312f62ed8daace5d317448f489290e022da96 dreamview
zhxt@in_release_docker:/apollo/modules/dreamview$ readelf -d dreamview
Dynamic section at offset 0x76fc60 contains 64 entries:
Tag Type Name/Value
0x0000000000000001 (NEEDED) Shared library: [libactionlib.so]
0x0000000000000001 (NEEDED) Shared library: [libcpp_common.so]
0x0000000000000001 (NEEDED) Shared library: [libcv_bridge.so]
0x0000000000000001 (NEEDED) Shared library: [libeigen_conversions.so]
0x0000000000000001 (NEEDED) Shared library: [libfastcdr.so]
0x0000000000000001 (NEEDED) Shared library: [libfastrtps.so]
0x0000000000000001 (NEEDED) Shared library: [liborocos-kdl.so.1.3]
0x0000000000000001 (NEEDED) Shared library: [librosbag.so]
0x0000000000000001 (NEEDED) Shared library: [librosbag_storage.so]
0x0000000000000001 (NEEDED) Shared library: [librosconsole.so]
0x0000000000000001 (NEEDED) Shared library: [librosconsole_backend_interface.so]
0x0000000000000001 (NEEDED) Shared library: [librosconsole_log4cxx.so]
0x0000000000000001 (NEEDED) Shared library: [librosconsole_print.so]
0x0000000000000001 (NEEDED) Shared library: [libroscpp.so]
0x0000000000000001 (NEEDED) Shared library: [libroscpp_serialization.so]
0x0000000000000001 (NEEDED) Shared library: [libroslz4.so]
0x0000000000000001 (NEEDED) Shared library: [librostime.so]
0x0000000000000001 (NEEDED) Shared library: [libtf2.so]
0x0000000000000001 (NEEDED) Shared library: [libtf2_ros.so]
0x0000000000000001 (NEEDED) Shared library: [libtopic_tools.so]
0x0000000000000001 (NEEDED) Shared library: [libxmlrpcpp.so]
0x0000000000000001 (NEEDED) Shared library: [libleveldb.so.1]
0x0000000000000001 (NEEDED) Shared library: [libcurl.so.4]
0x0000000000000001 (NEEDED) Shared library: [libboost_thread.so.1.54.0]
0x0000000000000001 (NEEDED) Shared library: [libjpeg.so.8]
0x0000000000000001 (NEEDED) Shared library: [libtiff.so.5]
0x0000000000000001 (NEEDED) Shared library: [libpng12.so.0]
0x0000000000000001 (NEEDED) Shared library: [libjasper.so.1]
0x0000000000000001 (NEEDED) Shared library: [libz.so.1]
0x0000000000000001 (NEEDED) Shared library: [libqp_oases.so]
0x0000000000000001 (NEEDED) Shared library: [libpthread.so.0]
0x0000000000000001 (NEEDED) Shared library: [librt.so.1]
0x0000000000000001 (NEEDED) Shared library: [libboost_system.so.1.54.0]
0x0000000000000001 (NEEDED) Shared library: [libm.so.6]
0x0000000000000001 (NEEDED) Shared library: [libdl.so.2]
0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6]
0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1]
0x0000000000000001 (NEEDED) Shared library: [libc.so.6]
0x000000000000000f (RPATH) Library rpath: [$ORIGIN/../../_solib_k8/_U@ros_S_S_Cros_Ucommon___Uexternal_Sros_Slib]
0x000000000000000c (INIT) 0x451ef8
0x000000000000000d (FINI) 0x9c2cc4
0x0000000000000019 (INIT_ARRAY) 0xd6f7f0
0x000000000000001b (INIT_ARRAYSZ) 1120 (bytes)
0x000000000000001a (FINI_ARRAY) 0xd6fc50
0x000000000000001c (FINI_ARRAYSZ) 8 (bytes)
0x000000006ffffef5 (GNU_HASH) 0x4002d0
0x0000000000000005 (STRTAB) 0x420058
0x0000000000000006 (SYMTAB) 0x406ea0
0x000000000000000a (STRSZ) 182751 (bytes)
0x000000000000000b (SYMENT) 24 (bytes)
0x0000000000000015 (DEBUG) 0x0
0x0000000000000003 (PLTGOT) 0xd700b0
0x0000000000000002 (PLTRELSZ) 11664 (bytes)
0x0000000000000014 (PLTREL) RELA
0x0000000000000017 (JMPREL) 0x44f168
0x0000000000000007 (RELA) 0x44ee08
0x0000000000000008 (RELASZ) 864 (bytes)
0x0000000000000009 (RELAENT) 24 (bytes)
0x0000000000000018 (BIND_NOW)
0x000000006ffffffb (FLAGS_1) Flags: NOW
0x000000006ffffffe (VERNEED) 0x44ebb8
0x000000006fffffff (VERNEEDNUM) 10
0x000000006ffffff0 (VERSYM) 0x44ca38
0x0000000000000000 (NULL) 0x0
Test on version:
$ git rev-parse HEAD
846f4adb5ceb8424f3e289ec55ec4d19cd8518ab
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4c168b975c12 apolloauto/apollo:dev-x86_64-20180419_1510 "/bin/bash" 2 hours ago Up 2 hours apollo_dev
b441f9d00cd1 apolloauto/apollo:yolo3d_volume-x86_64-latest "/bin/sh" 2 hours ago Up 2 hours apollo_yolo3d_volume
213c43581603 apolloauto/apollo:localization_volume-x86_64-latest "/bin/sh" 2 hours ago Up 2 hours apollo_localization_volume
786733582de6 apolloauto/apollo:map_volume-sunnyvale_loop-latest "/bin/bash" 2 hours ago Up 2 hours apollo_map_volume-sunnyvale_loop
16418774e967 apolloauto/apollo:map_volume-sunnyvale_big_loop-latest "/bin/sh" 2 hours ago Up 2 hours apollo_map_volume-sunnyvale_big_loop
cc3026735e8e apolloauto/apollo:release-x86_64-v2.0.1 "/bin/bash" 2 hours ago Up 2 hours apollo_release
As you can see, dreamview in release docker does not depend on libpcl, So I think that's why it runs happily. (a_face_full_with_surprise.jpg)
Hi all, Im having a similar issue. After the build was complete successfully, dreamview is not displayed at localhost:8888. Im using ubuntu 16.04. I have downloaded the latest master version of apollo from gihub. As suggested by @zhxt , I compiled pcl using c++11 and copied pcl library files to /usr/local/lib. But dreamview still didn't work. Im using dev_start.sh and my gdb output is as follows.
`(gdb) r Starting program: /home/abel/.cache/bazel/_bazel_abel/540135163923dd7d5820f3ee4b306b32/execroot/apollo/bazel-out/local-dbg/bin/modules/dreamview/dreamview --flagfile=/apollo/modules/dreamview/conf/dreamview.conf [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". warning: the debug information found in "/home/caros/secure_upgrade/depend_lib/libyaml-cpp.so.0.5.1" does not match "/home/caros/secure_upgrade/depend_lib/libyaml-cpp.so.0.5" (CRC mismatch).
[New Thread 0x7fffc9bdd700 (LWP 5178)]
Program received signal SIGILL, Illegal instruction.
0x00007fffefd02bec in double boost::math::detail::erf_inv_imp<double, boost::math::policies::policy<boost::math::policies::promote_float
from /usr/local/lib/libpcl_sample_consensus.so.1.7
from /usr/local/lib/libpcl_sample_consensus.so.1.7
argv=argv@entry=0x7fffffffe198, env=env@entry=0x7fffffffe1b0)
at dl-init.c:78
---Type
Huh ! The release version is working fine. dev version still not working.
@Abelteklu Hi, could you please provide more info:
1, grep flags /proc/cpuinfo | uniq
;
2,objdump -d /usr/local/lib/libpcl_sample_consensus.so | grep vfmadd213sd &> /dev/null; echo $?
Also, please double check you had your own built libpcl* inside /usr/local/lib/.
@Abelteklu , @zhxt comment above really helped me . Have you tried those steps ?
Thank you all for the contribution. Since the issue has been resolved and documented, we will close the issue for now. If you have any additional questions, please feel free to open a new issue.
I also meet this problem, thanks to Mr zhxt 's sharing , it was resolved seems it missed the make -j2 step, should be as follow, cd pcl mkdir build cd build cmake .. (We don't know the parameters that Apollo used, so we keep it by default) make -j2
mkdir -p /usr/local/lib/pcl.origin mv /usr/local/lib/libpcl* /usr/local/lib/pcl.origin
cp -a lib/* /usr/local/lib/
ldconfig
Mr zhxt , if anything wrong please correct me.
@wfgsy101 Yeah, you're right. The comment has been updated. Thank you for pointing this out!
Thanks also goes to @gladijos from #5436. I will submit a PR for the FAQ doc later.
@zhxt Hi, can you please help with my error ? I got the same error and I followed your instruction. And after that, I still have the error like below.
@in_dev_docker:/apollo$ bash scripts/bootstrap.sh
Started supervisord with dev conf
Start roscore...
voice_detector: started
dreamview: ERROR (spawn error)
#apollo/data/log/dreamview.out
/apollo/bazel-bin/modules/dreamview/dreamview: error while loading shared libraries: libpcl_common.so.1.7: cannot open shared object file: No such file or directory
/apollo/bazel-bin/modules/dreamview/dreamview: error while loading shared libraries: libpcl_common.so.1.7: cannot open shared object file: No such file or directory
/apollo/bazel-bin/modules/dreamview/dreamview: error while loading shared libraries: libpcl_common.so.1.7: cannot open shared object file: No such file or directory
/apollo/bazel-bin/modules/dreamview/dreamview: error while loading shared libraries: libpcl_common.so.1.7: cannot open shared object file: No such file or directory
Can you please debug for this error ? Really thanks !
@CCodie Do you have that lib libpcl_common.so.1.7 in dir /usr/local/lib inside docker? You need to copy all libpcl* that you built to that dir, inside docker.
@zhxt I think there's some change in git source. I solved that problem by following instructions in pcl official page. Anyway, your solution works properly and now I can run Dreamview. Thanks for your guide.
I have same problem after run your code ,page not found
here is my data/log/dreamview.out
what(): null context when constructing CivetServer. Possible problem binding to port.
/apollo/apollo-platform/ros/ros_comm/roscpp/src/libros/init.cpp:660 configParse() [ WARN] [1544257104.374647612]: transport file: /home/tmp/ros/etc/ros/transport_mode.yaml is not map
/apollo/apollo-platform/ros/ros_comm/roscpp/src/libros/init.cpp:349 start() [ WARN] [1544257104.374715867]: Parse transport_mode file failed
what should I do?
@zhxt Hi, greetings, could you please help my error? The problem i had during start Dreamview is:
@in_dev_docker:/apollo$
bash scripts/bootstrap.sh
nohup: appending output to 'nohup.out'
Launched module monitor.
nohup: appending output to 'nohup.out'
Launched module dreamview.
Failed to start Dreamview. Please check /apollo/data/log or /apollo/data/core for more information
@in_dev_docker:/apollo$
bash scripts/dreamview.sh start_fe
Module dreamview is already running - skipping.
`@in_dev_docker:/apollo$ gdb --args /apollo/bazel-bin/modules/dreamview/dreamview --flagfile=/apollo/modules/dreamview/conf/dreamview.conf GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.3) 7.7.1 Copyright (C) 2014 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 /apollo/bazel-bin/modules/dreamview/dreamview...done. (gdb) r Starting program: /home/guoqiuyi/.cache/bazel/_bazel_guoqiuyi/540135163923dd7d5820f3ee4b306b32/execroot/apollo/bazel-out/local-dbg/bin/modules/dreamview/dreamview --flagfile=/apollo/modules/dreamview/conf/dreamview.conf [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Program received signal SIGILL, Illegal instruction.
0x00007ffff1c41bec in double boost::math::detail::erf_inv_imp<double, boost::math::policies::policy<boost::math::policies::promote_float
And I followed the tips pcllib: git
clone https://github.com/PointCloudLibrary/pcl.git
@in_dev_docker:/apollo$
cd pcl
@in_dev_docker:/apollo/pcl$
git diff
@in_dev_docker:/apollo/pcl$
cd ..
@in_dev_docker:/apollo$
cd pcl
@in_dev_docker:/apollo/pcl$
mkdir build
@in_dev_docker:/apollo/pcl$
cd build
@in_dev_docker:/apollo/pcl/build$
cmake ..
Then I hit this bump:
CMake
Error at CMakeLists.txt:2 (cmake_minimum_required):
`` CMake 3.5 or higher is required. You are running version 2.8.12.2
-- Configuring incomplete, errors occurred! `
What should I do next? how to update the cmake in docker? ANY help would be really appreciated!! Thanks a lot!!
@EllieGuo, the following worked for me: cp /apollo/bazel-bin/modules/dreamview/dreamview /apollo/modules/dreamview
@EllieGuo, the following worked for me: cp /apollo/bazel-bin/modules/dreamview/dreamview /apollo/modules/dreamview
@amontserratAG Hi, thanks for your kind suggestion, however, this did not work for me, and i started to think it might be my computer issue. Sorry for such a delay.
After the build has passed successfully on Ubuntu 17.10:
But Firefox cannot connect to localhost:8888.
apollo/data/log/
has the following:The contents of monitor.ERROR are:
Any help would be appreciated...