00:05
如何在云上运行并调试engine next的源码呢?我要源码浏览,远程部署并追踪调试C程序这些容易搞碟问题,先跟我一起从一分钟创建云服务器开始吧。我们以腾讯云的主打产品轻量应用服务器举例,根据需要选择服务器的地域,我们选一台两核心的tu,勾选协议开通就是这么方便,注意需要设置下防火墙,打开一个TCP端口,为后续的TDB远程调试做准备。我们选择TCP的端口,推荐在DNS coded域名解析控制台为云服务器关联主机记录,后续登录更加方便我们登录云服务器终端安装所需的软件包。
01:05
在设置下这个price系统参数并创建服务器端的项目目录,服务器的配置就完成了。在engine X主页找到当前最新melan版本的源代码,将其下载智云服务器,并用turn命令解压缩。在编译配置前安装所需依赖的系统软件包,然后就可以configu配置代码啦。一定注意加上这些启动调试相关的编译选项哦,配置成功,Make file文件生成了。现在我们来创建配置zlineon项目并浏览源代码吧。z lion是jet bs公司开发的C语言集成开发。
02:05
径,它通过r think与云服务器同步,代码通过SSH在服务器上远程执行编译调试的命令。我们首先要在项目设置中添加远程主机上的构建工具链信息,设置远程主机的登录认证信息,如域名、登录用户及公钥等。然后slion会自动探测服务器上的构建工具,这里拖动下就可以设置其为默认工具链哦,以后构建时代码就会在远端编译执行啦,真方便,接着我们从零开始创建enginex调试项目吧。
03:05
在部署设置这里,我们需要填上服务器端的项目目录,这样就能在本地和服务器间同步文件啦。我们将服务器端的的源代码同步下载到本地。选中makefi文件,它非常关件c lion通过它来导入项目,进而定义构建流程以及创建代码文件间的索引。我们在构建设置里设置confi命令,刚才我们就是通过该命令来生成makefi的。还记得吧?点选构建刷新clineon将会重新再次执行confi s中定义的构建目标都会显示在构建菜单里啦。在cli中,这些被抽象为make application,此时全部代码的交叉索引对建立完成。我们可以自由的查看变量及结构体定义以及含。
04:45
函数间的跳转引用关系了,这样浏览代码是不是感觉超级方便呢?下一步我们改改代码,准备编译运行咯。点选构建按钮,我们开始第一次编译构建,看起来代码编译很顺利呢,我们再修改一个原文件,增加一行调试级别的日志打印。
05:45
再次构建、编译并安装服务器上看到新生成的目标文件和可执行文件。我们修改下engine的配置文件,调整下日志输出级别和服务监听端口。运行NX可执行文件,可以看到我们的HTTP服务器已经启动了。对于N这类fok后退出的后台服务,我们需用attach模式启动gdb sir,注意需要attach到worker进程哦,调试器的服务端就启动完成了。我们回到C。
06:45
进行调试器客户端的UI配置,新增远程调试配置,设置GDB服务器的连接参数就OK啦。
07:16
我们点选调试器启动按钮,可以看到远程调试器已经开始追踪服务进程,并使其停在了预设的断点处。快试试查看运行时的函数站并执行下常用的GDB命令吧。最后我们来追踪调试下运行时的engine进程,在cline集成终端可以方便的连接服务器。我们通过TL命令实时打印日志输出,再用单步执行,可以看到刚刚修改的代码正确的输出了日志。
08:16
再通过curl命令发送HTTP请求,进程将陷入调试断点。这次我们F7按键tap into函数内部具体的查看其实现函数。在clion的GDB调试器前端,还可以方便的实时查看内存中的变量值,当然动态的修改运行时内存也非常便捷,这也是调试器常用的功能。
09:25
注意X架构是小尾端的字节序哦。云服务器上远程调试C语言进程的流程和技巧,你学会了吗?源码之下没有秘密,快去寻觅一个感兴趣的项目,动手实践起来吧。最后,记得关注腾讯云服务器的官方公众号,获取更多产品资讯和使用教程哦。我们下期再见吧。
我来说两句