当前位置: 首页 > 知识库问答 >
问题:

在使用 GDB/Eclipse 进行调试时传递要处理的命令行参数

岳刚洁
2023-03-14

我正在尝试使用Eclipse(CDT)的GDB调试进程。我可以开始调试,单步执行代码等等。因此,基本设置似乎有效。

然而,我不知道如何将命令行参数传递给进程。可执行文件不是用Eclipse构建的,我使用单独的make文件。

我为调试所采取的步骤:

  1. 跑-

那么,我如何在上面的场景中为附加的新应用程序传递命令行参数?

提前感谢!

共有2个答案

拓拔富
2023-03-14

仅供参考,如果有人后来在为同一个问题而战:
似乎可以使用gdb命令文件将参数传递给新的附加进程。我只是将下一行附加到命令文件:

set args arg1 arg2 argX

...并在调试器选项中选择该文件作为GDB命令行。这些参数在进程启动时传递给main。

松旻
2023-03-14

由于“c附加到应用程序”将调试器附加到已经运行的应用程序,您不能期望能够传递命令行参数。您需要在启动可执行文件的任何地方传递这些。

我觉得你找的是普通的“C/C应用”启动配置。它确实需要一个项目(您可以创建一个虚拟项目或者导入您实际的makefile项目,如果您使用它的话)。使用这种类型的启动配置,您将获得额外的“Arguments”选项卡,您可以在其中输入“命令行”参数。

 类似资料:
  • 问题内容: 作为作业的一部分,我必须调试一个有错误的程序。但是,我必须先传递命令行参数才能解决此问题。 我做: 哪个可行,但是之后我不知道如何传递参数。我用过,它说了一些我也尝试过的方法,但是没有用。 我希望能够获得调试器+ GUI并传递命令行参数。 问题答案: 一旦启动,您可以使用“ r args ” 运行程序。 因此,如果您通过以下方式运行代码: 通过以下方法调试:

  • 问题内容: 我是Visual Studio用户,习惯于调试断点。我现在在Linux环境中工作,并且正在使用Eclipse作为IDE。我是linux和eclipse的新手。我不知道如何在Eclipse中使用gdb。我尝试在命令行中使用gdb,但它并不像拥有UI那样容易。 如何在Eclipse中使用gdb? 问题答案: 以下说明适用于Eclipse 3.5(Galileo)。对于3.6(Helios)

  • 如何将字符串的命令行参数传递给java main方法,以便调用另一个类中的特定方法? 我需要能够通过“java Statdriver mean”调用mean方法,或者“java Statdriver std”调用标准偏差方法,或者不传递任何参数将导致通过终端调用mean方法。 按我的方式做似乎不起作用。我认为我的问题在于如果,否则如果,否则循环。 这是我的密码:

  • 问题内容: 我们有一个使用OpenSSL的Python绑定的Linux应用程序,我怀疑它会导致随机崩溃。有时,我们会看到它崩溃并显示以下消息: Python致命错误:GC对象已被跟踪 这似乎是库方面的编程错误,或者是内存损坏的症状。给定一个核心文件,有什么办法知道它执行的最后一行Python源代码?还是如果它附加在GDB中?我意识到这可能是所有已编译的字节码,但是我希望那里有人解决了这个问题。当前

  • 10.6. 处理命令行参数 Python 完备支持创建在命令行运行的程序,并且连同命令行参数和短长样式来指定各种选项。这些并非是 XML 特定的,但是这样的脚本可以充分使用命令行处理,看来是时候提一下它了。 如果不理解命令行参数如何暴露给你的 Python 程序,讨论命令行处理是很困难的,所以让我们先写个简单那的程序来看一下。 例 10.20. sys.argv 介绍 如果您还没有下载本书附带的例

  • 问题内容: 我正在为要调试的服务运行intellij远程调试和Maven。 我在跑 这给我以下结果 我的问题是我想轻松更改端口。我知道我可以进入pom.xml文件并对其进行更改,或者可以在以下位置进行以下操作: mvnDebug.bat 但我希望能够在命令行上指定我的端口。有什么办法吗?我希望能够在一次运行的不同地址上调试多个服务,并且给人的印象是,必须为每个服务设置和重置调试文件设置很麻烦。 一