加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – chromium-browser在module_list.cc中构建致命错误:检查失

发布时间:2020-12-16 06:52:16 所属栏目:百科 来源:网络整理
导读:我一直在尝试在 Windows 10上构建chrome,但是我在运行时遇到了奇怪的错误,这似乎是由该模式引起的: void CheckFreeLibrary(HMODULE module) { BOOL result = ::FreeLibrary(module); DCHECK(result);} Chromium启动几秒钟后会显示第一个错误.这就是它所说的
我一直在尝试在 Windows 10上构建chrome,但是我在运行时遇到了奇怪的错误,这似乎是由该模式引起的:

void CheckFreeLibrary(HMODULE module) {
  BOOL result = ::FreeLibrary(module);
  DCHECK(result);
}

Chromium启动几秒钟后会显示第一个错误.这就是它所说的:

[5904:9192:0726/025753:FATAL:module_list.cc(18)] Check failed: result.
Backtrace:
    base:debug:StackTrace:StackTrace [0x0000....] (e:projectscloneschromiumsrcbasedebugstack_trace.cc) ...

由于我无法复制粘贴整个堆栈,我将加入一个截然不同的截图:

StackTrace errors

我成功构建了最新版本,或者至少它看起来很成功,因为在使用Building instructions中推荐的工具链进行编译时没有出现任何错误.

幸运的是,第一个错误不是模态的,之后可以稍微浏览一下.然后,如果我将应用程序置于重负载(例如Facebook新闻源),它将突然停止响应.鼠标悬停效果将不再显示,重新加载页面将导致无限加载.右键单击某些页面时,此行为也是可重现的(例如:google的主页有时会这样做).

有什么可以解释这个没有默认配置的“开箱即用”?如何解决这个问题?

P.S.:这个问题是对这个问题的补充:
Windows chromium-browser fresh build stacktrace and anonymous fatal errors on runtime,如果它可以帮助了解问题的大局.

P.2.2.:我正在尝试从这个微小的变化开始重建,看看它是否更好.不过,大约10个小时后我就可以看到它了(是的,在我目前的设置上构建是痛苦的).

void CheckFreeLibrary(HMODULE module) {
  BOOL result = ::FreeLibrary(module);
  if (!result) {
      result = ::UnmapViewOfFile(module);
  }
  DCHECK(result);
}

更新 – 2016/07/29

使用CheckFreeLibrary进行测试仍然在调试中失败,但我终于找到了解决构建中问题的方法.请参阅超级用户question中的更新3.我所做的是通过gn args将构建配置为发布模式.显然,这几乎是不可能调试的,因此尚未找到解决方案/解释为什么它在调试模式下失败.不过现在这已经非常接近了.

更新2 – 2016/08/13

重新开始再次使用存储库中的最新版本再次调试版本,这次我确信找到了一些东西.事实上,在我经历了更新,生成和构建的常规过程之后,我注意到Windows Kit调试器中的一些win-core- * DLL库没有复制到src文件夹,但其中一个被认为是在链接过程中.作为预防措施,我只是将它们全部复制以确保存在任何延迟加载或构建依赖性.铬首次推出时,错误没有出现,并认为它正在解决问题.但是,右键单击Google主页具有相同的效果(无响应,然后浏览器不再显示页面).关闭并重新打开后,错误开始显现.

有没有人经历过这种情况?我会很高兴看到“在Linux上做它,它在这个平台上运行得更好”.不过,我不愿意在不知道它会更好的情况下做到这一点.

解决方法

所以

BOOL result = ::FreeLibrary(module);

在调试版本中失败,看看你是否有

DWORD WINAPI GetLastError(void);

得到真正的错误.

我猜可以

module not loaded

module is NULL

也许一些DEBUG语句正在改变模块的价值?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读