C程序fork多进程调试

参考

gdb调试多进程与多线程 
Clion连接docker远程开发

多进程调试(调试命令+调试演示)

vscode调试多进程应用

ssh: connect to host localhost port 22: Connection refused 问题

在Ubuntu 20.04中安装CLion

CLion: rsync is not installed or not avaiable in PATH on remote host

背景

我想在Docker环境下运行程序,我想打断点,一步步调试。

我之前一直用vscode 调试C/C++程序,这次调试多进程程序,发现fork后,vscode 插件debug进不去子进程。

自己菜,GDB用不流畅。

结果

最后选择在Clion里进行调试。Clion里可以在fork后,点击进入子进程,就像GDB一般。

勾选"复刻时跟随子级", "复刻时分离进程" 然后fork后,就是进入了子进程,可以看到fork的返回为0,代表进入了子进程。

过程

   配置的整个过程是Clion连接DockerSSH开发, 具体是参考知乎文章

配置SSH

   在Docker里需要

  1. 安装 SSH 软件,
  2. 配置SSH并生成密钥,然后
  3. 启动SSH(可以想办法设置启动容器后,自动启动SSH)。

   我遇到ssh: connect to host localhost port 22: Connection refused 的问题,参考文章,得知sshd没有启动

  无法启动sshd。

使用调试来找问题 

/usr/sbin/sshd -d

前台运行sshd

/usr/sbin/sshd -D

 可以根据调试报错来修改。

安装Clion

ubuntu snap下载的Clion 总是卡死,遂尝试用官网下载,参考文章,官网的没有卡死。

Clion SSH连接

还是参考前述的知乎文章,配置SSH。

遇到问题: 

CLion: rsync is not installed or not avaiable in PATH on remote host

依据参考文章解决了。

遗留问题

  1. Clion有直接连Docker的,但是好像是需要重新开容器,我是连接原有的容器,所以没有尝试这个功能。
  2. 看着ClionSSH连接,应该是在被连接机器中,下载了一个Clion IDE,但是体积很大,有1个G,感觉不如vscode ssh 插件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值