有时候需要在运行程序的机器上调试qt程序,但是运行机冤铘讵柘没有开发环境。qtcreator提供远程调试程序的方法,这样可以实现在主机上调试运行机上的程序
工具/原料
QtCreator 5.3
centos 7
调试程序
1、在开发环境的主机上,新建一个qt测试程序testDlg,在界面上增加一个按钮
2、点击按钮后,会弹出QMessagebox对话框
3、编程程序,生成可执行程序
环境准备
1、主机IP:192.168.3.31 系统centos 7运行机IP:192.168.1.224 系统centos 7
2、确保主机和运行机上可以互相ping
3、在运行机上安装gdb和gdbserver如果运行机可以连接互联网,可以使用yum 坡纠课柩install gdb gdb-gdbserver来安装gdb和gdbserver
4、在运行机上安装并运行ssh服务如果运行机可以连接互联网,可以使用yum insta盟敢势袂ll openssh-server来安装通过service sshd start来启动ssh服务
5、拷贝主机上的testDlg可执行程序到运行机上,相关的qt的库也需要拷贝测试时,拷贝在运行机的/home目录下
远程调试
1、在运行机上启动gdbserver命令格式如下:gdbserver 主机IP:端口 可执行程序所有这里输入的是gdbserver 192.168.3.13:12345 testDlg
2、在主机上,在qtcreator中选择调试菜单->开始调试->关联到远程调试服务器
3、在弹出的启动调试器中,输入需要连接的运行机的ip和端口还有本机的可执行程序,以及本地的源码目录
4、配置完启动调试器后,点击ok按钮
5、可以看到运行机已经运行了程序,并且提示是远端调试
6、在主机源码按钮的槽函数上添加断点,然后点击运行机可执行程序界面的按钮主机源码进入的断点等待这样就实现了远程调试