安装Sophus库时,cmake通过,在make时,发生错误。提示错误如下:
1. Sophus/sophus/so2.cpp:33:26:error: lvalue required as left operand of assignment
unit_complex_.real() = 1.;
2. Sophus/sophus/so2.cpp:33:26:error: lvalue required as left operand of assignment
unit_complex_.imag() = 1.;*
打开 Sophus/sophus/so2.cpp文件。
将:
SO2::SO2()
{
unit_complex_.real() = 1.;
unit_complex_.imag() = 0.;
}
改成:
SO2::SO2()
{
unit_complex_.real(1.);
unit_complex_.imag(0.);
}
使用 sophus
cmake_minimum_required( VERSION 2.8 )
project( useSophus )
# 为使用 sophus,您需要使用find_package命令找到它
find_package( Sophus REQUIRED )
include_directories( ${Sophus_INCLUDE_DIRS} )
add_executable( useSophus useSophus.cpp )
target_link_libraries( useSophus ${Sophus_LIBRARIES} )
安装ceres出现错误,与eigen3.3发生冲突
本文链接:https://blog.csdn.net/wangshuailpp/article/details/77679897
错误信息:
error: no type named ‘Literal’ in ‘struct Eigen::NumTraits<ceres::Jet<double, 2> >
make[2]: *** [internal/ceres/CMakeFiles/jet_test.dir/jet_test.cc.o] error 1 make[1]: *** [internal/ceres/CMakeFiles/jet_test.dir/all] error2
解决方案:重新安装eigen3.2版本的再次make下ceres
http://eigen.tuxfamily.org/index.php?title=News:Eigen_3.2.2_released
Ubuntu解决没有可安装候选软件包
解决方法:可以使用apt-cache search <package_name>寻找。
例如:
E: 软件包 libqglviewer-dev 没有可安装候选
解决方法:
apt-cache search libqglviewer-dev
执行命令出现:
libqglviewer-dev-qt4 - OpenGL 3D viewer library based on Qt4 - development files
libqglviewer-dev-qt5 - OpenGL 3D viewer library based on Qt5 - development files
选择下面你要安装的软件包即可,我安装了第二个
sudo apt-get install libqglviewer-dev-qt5
最后就能完成替代了。
安装OpenCv 3.1下载ippicv失败
安装OpenCv 3.1的过程中要下载ippicv_linux_20151201,由于网络的原因,这个文件经常会下载失败。
解决的办法是手动下载:ippicv_linux_20151201.tgz
下载完后替换opencv-3.1.0/3rdparty/ippicv/downloads/linux-*目录下的同名文件,重新cmake。
原文链接:https://blog.csdn.net/qq_42517195/article/details/80834655
执行时缺少VTK库
like@like-Inspiron-7557:/code/slambook/ch5/joinMap$ bulid/joinMap
bulid/joinMap: error while loading shared libraries: libvtkRenderingCore-7.1.so.1: cannot open shared object file: No such file or directory
然后就找一下vtk的lib在哪里吧,发现是在/usr/local/lib里的,发现里面好多其他的库,加过来吧
具体操作是
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
然后重新执行就ok啦!
Ubuntu18.04.1安装ROS(‘E:无法定位软件包’)
https://blog.csdn.net/sinat_34130812/article/details/81666728
ubuntu添加qmake 出现错误
qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory
可以安装手动安装qt库
sudo apt-get install qt-sdk
如果自己编译qt库,那就需要手动修改路径
cd /usr/lib/x86_64-linux-gnu/qt-default/qtchooser
vim default.conf
会有一个default.conf配置文件,可以修改默认配置文件为你编译好的qt库路径。将第一行中的/usr/lib/x86_64-linux-gnu/qt4/bin/qmake 替代为qmake的路径
VTK编译过程出错
CMake Error at F:/vtk7.0/VTKsrc/CMake/ExternalData.cmake:1005 (message):
Object MD5=b7d4fa1943ca47ef537e6847886e3935 not found at:
该报错是因为CMake中勾选了BUILD_TESTING选项,而CMake的VTK_DATA_ROOT先设置不正确,导致编译时需要先下载vtkdata数据。由于网速或者没有科学上网等原因下载数据的时间 超过了设置的最大等待时间。
下载vtkdata.zip数据,将其解压文件中MD5文件覆盖二进制目录下\ExternalData\Objects\MD5文件。
cmake 解决错误:Cannot specify link libraries for target
要将 ADD_EXECUTABLE的声明放到设置库文件的TARGET_LINK_LIBRARIES之前
ubuntu16.04+ROS kinetic下跑LSDSLAM问题集锦
https://www.cnblogs.com/GJGJH/p/9704384.html
https://blog.csdn.net/softimite_zifeng/article/details/78632506
https://blog.csdn.net/qq_40806289/article/details/82835019
https://blog.csdn.net/qq_40806289/article/details/82866926
https://blog.csdn.net/windfly_al/article/details/79439037#commentsedit