Gdb 如何调试使用GUI安装的C程序?

Gdb 如何调试使用GUI安装的C程序?,gdb,guix,Gdb,Guix,我使用GUI安装了flatpak,但它在启动时出现故障。我想对其进行调试,但GUI为flatpak安装了一个包装器脚本,因此在gdb下运行时出现以下错误: "/home/user/.guix-profile/bin/flatpak": not in executable format: file format not recognized 我试图编辑包装器脚本以调用gdb,但此包装器脚本甚至不能由root编辑,因为它归root所有,并且具有只读权限。只需将脚本复制到当前工作目录: cp /ho

我使用GUI安装了flatpak,但它在启动时出现故障。我想对其进行调试,但GUI为flatpak安装了一个包装器脚本,因此在gdb下运行时出现以下错误:

"/home/user/.guix-profile/bin/flatpak": not in executable format: file format not recognized

我试图编辑包装器脚本以调用gdb,但此包装器脚本甚至不能由root编辑,因为它归root所有,并且具有只读权限。

只需将脚本复制到当前工作目录:

cp /home/user/.guix-profile/bin/flatpak .
将其标记为可写:

chmod +w flatpak
使用您喜爱的文本编辑器编辑脚本,将字符串
exec-a
替换为
exec-gdb--args

最后,使用您之前提供的任何参数运行它,当它行为不正常时:

./flatpak remote-add flathub https://flathub.org/repo/flathub.flatpakrepo
在这个特殊的例子中,这并不是非常有用,因为还没有为这个包构建一个。但至少我可以从gdb得到回溯