标签: debugging

gdb中的多个命令由某种分隔符';'分隔?

我试图在gdb中一次执行两个命令:

finish; next
Run Code Online (Sandbox Code Playgroud)

我试过用';' 分开命令,但gdb不允许我同时做两个.

是否可以在gdb中执行多个命令,类似于以';'分隔的bash命令 分隔符?

debugging gdb

135
推荐指数
4
解决办法
3万
查看次数

如何在Python自己的调试器(PDB)中执行多行语句

所以我正在运行一个Python脚本,在其中我通过编写调用Python的调试器PDB:

import ipdb; ipdb.set_trace()
Run Code Online (Sandbox Code Playgroud)

(iPython的PDB版本,虽然我认为它不会产生影响;我只将其用于彩色输出).

现在,当我到调试器时,我想执行多行语句,例如if子句或for循环,但是一旦我输入

if condition:
Run Code Online (Sandbox Code Playgroud)

并点击返回键,我收到错误信息 *** SyntaxError: invalid syntax (<stdin>, line 1)

如何在PDB中执行多行语句?如果不可能有一种解决方法仍然执行if子句或for循环?

python debugging multiline pdb

135
推荐指数
6
解决办法
4万
查看次数

在调试器中正确地使.NET语言步进

首先,我为这个问题的长度道歉.

我是IronScheme的作者.最近我一直在努力发出不错的调试信息,以便我可以使用'native'.NET调试器.

虽然这部分成功,但我遇到了一些问题.

第一个问题与踩踏有关.

由于Scheme是一种表达式语言,一切都倾向于用括号括起来,不像主要的.NET语言似乎是基于语句(或行).

原始代码(Scheme)看起来像:

(define (baz x)
  (cond
    [(null? x) 
      x]
    [(pair? x) 
      (car x)]
    [else
      (assertion-violation #f "nooo" x)]))
Run Code Online (Sandbox Code Playgroud)

我故意在换行符上列出每个表达式.

发出的代码转换为C#(通过ILSpy),如下所示:

public static object ::baz(object x)
{
  if (x == null)
  {
    return x;
  }
  if (x is Cons)
  {
    return Builtins.Car(x);
  }
  return #.ironscheme.exceptions::assertion-violation+(
     RuntimeHelpers.False, "nooo", Builtins.List(x));
}
Run Code Online (Sandbox Code Playgroud)

如你所见,非常简单.

注意:如果代码在C#中转换为条件表达式(?:),那么整个过程只需要一个调试步骤,请记住这一点.

这是带有源和行号的IL输出:

  .method public static object  '::baz'(object x) cil managed
  {
    // Code size       56 (0x38)
    .maxstack  6
    .line 15,15 : 1,2 ''
//000014: 
//000015: …
Run Code Online (Sandbox Code Playgroud)

.net debugging clr visual-studio-2010 visual-studio

134
推荐指数
1
解决办法
3703
查看次数

错误"元数据文件'...\Release\project.dll'在Visual Studio中找不到"

最近我开始随机收到这条消息:

在Visual Studio中找不到元数据文件'...\Release\project.dll'

我有一个包含几个项目的解决方案.当前的构建模式是Debug,所有项目的配置都设置为Debug.但是当我尝试运行主项目时 - 有时它会给我一些错误,所有这些都是"元数据文件'...\Release\projectX.dll'找不到" - 而且,看,它说的是关于RELEASE文件夹,虽然当前模式是Debug.为什么?我试图在所有解决方案文件中搜索"Release\projectX.dll"的引用,我在ResolveAssemblyReference.cache文件中找到了一个.

我通过互联网进行了很好的搜索,发现了一些有类似问题的人,但没有解决方案,或者至少没有可行的解决方案.

我试图删除对这些项目的引用并阅读它们,但有一段时间我又开始重新获得这些错误.

这似乎是个bug.当我总是使用调试模式时,为什么要在Release文件夹中搜索引用的项目?

PS.对于那些遇到这个问题的人:我无法轻易解决它.它重新安装Windows后才消失:(

debugging release resolveassemblyreference visual-studio

133
推荐指数
8
解决办法
18万
查看次数

_DEBUG与NDEBUG

应该使用哪个预处理器定义来指定代码的调试部分?

使用#ifdef _DEBUG或者#ifndef NDEBUG是否有更好的方法来做到这一点,例如#define MY_DEBUG

我认为_DEBUG是Visual Studio特有的,是NDEBUG标准吗?

c c++ debugging

132
推荐指数
6
解决办法
13万
查看次数

PHP中一个更漂亮/信息丰富的Var_dump替代方案?

每一个体面的PHP程序员有一个print_rvar_dump包装他们使用,爱情和指定快捷键,我们为什么不分享我们最喜欢的人.

php variables debugging var-dump

131
推荐指数
11
解决办法
8万
查看次数

调试与发布性能

我遇到了以下段落:

在Visual Studio中编译代码时,IDE中的"调试与发布"设置对性能几乎没有差别......生成的代码几乎相同.C#编译器并没有真正进行任何优化.C#编译器只是吐出IL ...而在运行时它是执行所有优化的JITer.JITer确实具有调试/释放模式,这对性能产生巨大影响.但这并不能决定你是否运行项目的调试或发布配置,而是关闭是否附加了调试器."

来源在这里,播客在这里.

有人可以指导我一篇能够证明这一点的微软文章吗?

谷歌搜索" C#debug vs release performance "主要返回结果,说" Debug有很多性能损失 "," 发布已经优化 "," 不要将调试部署到生产中 ".

c# debugging performance release

130
推荐指数
4
解决办法
7万
查看次数

如何调试apache虚拟主机配置?

再一次,我的apache虚拟主机配置有问题.(使用默认配置而不是我的特定配置).

问题不是错误配置,而是如何解决它.

有没有人有好的建议来快速解决这类问题?

一些更多的信息.

默认的conf文件是这个:

NameVirtualHost *
<VirtualHost *>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        ErrorLog /var/log/apache2/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/access.log combined
        ServerSignature On

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes …
Run Code Online (Sandbox Code Playgroud)

apache debugging virtualhost

130
推荐指数
7
解决办法
13万
查看次数

如何调试git/git-shell相关问题?

我如何获得有关git/git-shell的一些调试信息?

我有一个问题,user1可以克隆存储库没有问题,而user2只能克隆一个空的.我设定了GIT_TRACE=1,但没有任何有用的东西被告知.

最后,经过长时间的反复试验,结果证明这是文件的权限问题.适当的错误消息可能会使此问题短路.

git debugging trace

130
推荐指数
7
解决办法
9万
查看次数

鉴于一个观点,我如何获得它的viewController?

我有一个指针UIView.我如何访问它UIViewController[self superview]是另一个UIView,但不是UIViewController,对吧?

iphone debugging uiviewcontroller uiview ios

129
推荐指数
6
解决办法
11万
查看次数