gdb imagewatch安装
依赖环境
1、An OpenGL 2.1+ compliant GPU
2、A C++11 compliant compiler (gcc-5 or later is recommended)
3、GDB 7.10+ compiled with python 3 support
4、Qt 5.6+ (required due to the HighDPI display support - download it here)
5、Python 3+ with its development packages
一、先安装QT,本次选择QT5.12.11 链接为
https://download.qt.io/archive/qt/5.12/5.12.11/
sudo chmod +x qt-opensource-linux-x64-5.12.11.run
sudo ./qt-opensource-linux-x64-5.12.11.run
执行上述命令进行安装,选择gcc、source及默认模块安装即可, 空间大可以选择全部模块,哈哈。
安装好后,设置默认的qmake。方法如下:
由于qt采用了root权限安装,因此,这里root权限添加到 vim /etc/profile,在普通用户模式下也生效,最后source即可。
sudo gedit /etc/profile
export PATH=$PATH:/opt/Qt5.12.11/5.12.11/gcc_64/bin
source /etc/profile
然后再将gcc链接到qmake
cd /usr/lib/x86_64-linux-gnu/qt-default/qtchooser
sudo gedit default.conf
# 打开default.conf,在第一行输入qmake所在的文件夹路径,
# 如:/opt/Qt5.12.11/5.12.11/gcc_64/bin
qt creator无法启动,无法加载xcb插件.
使用命令:
sudo apt install libxcb-xinerama0
二、到Github中下载gdb-imagewatch
网址如下:https://github.com/OpenImageDebugger/OpenImageDebugger
下载后,则进行gdb-imagewatch的编译:
2.1 安装依赖库
sudo apt install build-essential libpython3-dev python3-dev libpython2.7-dev python2-dev
2.2 安装imagewatch
cd folder_of_gdb_imagewatch
mkdir build
cd build
qmake .. BUILD_MODE=release PREFIX=/path/to/installation/folder
make -j8
sudo make install
其中PREFIX=/path/to/installation/folder表示gdb-imagewatch的安装路径,如果不设置这个参数,则使用默认的安装路径:/usr/local.
此时报错/usr/bin/ld: cannot find -lGL
因为 Qt 找不到 OpenGL 的动态链接库(libGL.so),原因Linux 发行版自带的 OpenGL 链接库在后缀中添加了版本号,例如 libGL.so.1、libGL.so.1.2.0、libGL.so.1.3.1 等,但是 Qt 在链接阶段查找的 OpenGL 链接库是不带版本号的,所以我们需要在 /usr/lib/ 目录下为 OpenGL 链接库创建一个链接,并去掉版本号。
sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 /usr/lib/libGL.so
2.3 配置~/.gdbinit
这是调用gdb的时候会执行这个文件
source /usr/local/OpenImageDebugger/oid.py
2.4 测试
python /usr/local/OpenImageDebugger/oid.py --test
安装成功会出现以下结果
我们也可以用VSCode来调试显示Mat图像,如下图black widow所示,还是非常方便咱们调试的.