【问题标题】:Google omaha build error谷歌奥马哈构建错误
【发布时间】:2016-09-14 05:44:44
【问题描述】:

当我尝试在 Windows 10 机器上构建 omaha 时,我收到了一些警告和致命错误。

C:\updater\omaha\omaha>hammer
scons: warning: No installed VCs
File "C:\chromium\upd\swtoolkit\site_scons\site_init.py", line 426, in SiteInitMain

scons: warning: No version of Visual Studio compiler found - C/C++ compilers most likely not set correctly
File "C:\chromium\upd\swtoolkit\site_scons\site_init.py", line 426, in SiteInitMain
scons: Reading SConscript files ...

scons: warning: No installed VCs
File "C:\chromium\upd\swtoolkit\site_scons\site_tools\target_platform_windows.py", line 283, in generate

scons: warning: No version of Visual Studio compiler found - C/C++ compilers most likely not set correctly
File "C:\chromium\upd\swtoolkit\site_scons\site_tools\target_platform_windows.py", line 283, in generate
Using precompiled headers.
Building versions: 1.3.99.0
python C:\chromium\upd\omaha\omaha\tools\proxy_clsid_utils.py
AttributeError: SConsEnvironment instance has no attribute 'WiX':
  File "C:\chromium\upd\omaha\omaha\main.scons", line 992:
    BuildEnvironments(_environments)
  File "C:\chromium\upd\swtoolkit\site_scons\site_init.py", line 276:
    e.ExecuteDefer()
  File "C:\Python24\Lib\site-packages\scons-1.3.1\SCons\Environment.py", line 224:
    return apply(self.method, nargs, kwargs)
  File "C:\chromium\upd\swtoolkit\site_scons\site_tools\defer.py", line 171:
    func(fenv)
  File "C:\chromium\upd\swtoolkit\site_scons\site_init.py", line 203:
    exports={'env': ec}, duplicate=0)
  File "C:\Python24\Lib\site-packages\scons-1.3.1\SCons\Script\SConscript.py", line 553:
    return apply(_SConscript, [self.fs,] + files, subst_kw)
  File "C:\Python24\Lib\site-packages\scons-1.3.1\SCons\Script\SConscript.py", line 262:
    exec _file_ in call_stack[-1].globals
  File "C:\chromium\upd\omaha\omaha\recovery\build.scons", line 104:
    env.BuildSConscript('repair_exe')
  File "C:\Python24\Lib\site-packages\scons-1.3.1\SCons\Environment.py", line 224:
    return apply(self.method, nargs, kwargs)
  File "C:\chromium\upd\swtoolkit\site_scons\site_tools\environment_tools.py", line 191:
    env.SConscript(script_file, exports={'env': env.Clone()})
  File "C:\Python24\Lib\site-packages\scons-1.3.1\SCons\Script\SConscript.py", line 553:
    return apply(_SConscript, [self.fs,] + files, subst_kw)
  File "C:\Python24\Lib\site-packages\scons-1.3.1\SCons\Script\SConscript.py", line 262:
    exec _file_ in call_stack[-1].globals
  File "C:\chromium\upd\omaha\omaha\recovery\repair_exe\build.scons", line 37:
    env.BuildSConscript(subdir)
  File "C:\Python24\Lib\site-packages\scons-1.3.1\SCons\Environment.py", line 224:
    return apply(self.method, nargs, kwargs)
  File "C:\chromium\upd\swtoolkit\site_scons\site_tools\environment_tools.py", line 191:
    env.SConscript(script_file, exports={'env': env.Clone()})
  File "C:\Python24\Lib\site-packages\scons-1.3.1\SCons\Script\SConscript.py", line 553:
    return apply(_SConscript, [self.fs,] + files, subst_kw)
  File "C:\Python24\Lib\site-packages\scons-1.3.1\SCons\Script\SConscript.py", line 262:
    exec _file_ in call_stack[-1].globals
  File "C:\chromium\upd\omaha\omaha\recovery\repair_exe\msp\build.scons", line 156:
    old_msi, new_msi = CreateMsiInstallerFiles(
  File "C:\chromium\upd\omaha\omaha\recovery\repair_exe\msp\build.scons", line 60:
    old_unsigned_output = old_unsigned_env.WiX(

我花了很多时间调试警告,似乎 scons 1.3.1 不支持 Visual Studio 2015,但是 google 的构建 instructions 暗示相反。此外,还不清楚错误是否取决于警告。请帮忙解决问题。

【问题讨论】:

  • 当您在上面引用的构建说明不支持时,我不明白您为什么要使用 SCons 1.3.1 之类的古老版本(较新的版本 do 支持 VS2015)明确要求它......啊,他们实际上第二次阅读。我的错。这很奇怪,不应该真的带来很多问题。至少无论如何我都会先尝试一下。
  • @dirkbaechle 我尝试了一个新版本的 SCons,omaha 的锤子没有用它构建,所以我猜应该做很多改变。

标签: build scons


【解决方案1】:

我解决了这个问题,结果发现新版本的 wix 工具集有 bin 文件夹,其中包含所有 utils 和官方文档和教程包含错误的环境变量。顺便说一句,警告对构建过程完全没有影响。 所以可能类似情况下调试任何代码都没有意义,只需要检查环境即可。

【讨论】:

  • 你能谈谈你是如何解决这个问题的吗?我下载了 WiX 3.10.3 并将其放在C:\Program Files (x86)\WiX Toolset v3.10\bin 下,我收到了同样的错误。非常感谢。
  • 当然,请检查 OMAHA_WIX_DIR 环境变量,它应该在路径中有 bin 文件夹,一旦我将其更改为目标 wix 二进制文件,它就可以工作
  • 非常感谢您的回复,我在hammer.bat里面有set OMAHA_WIX_DIR=%ProgramFiles(x86)%\WiX Toolset v3.10\bin,我下载了wix310.exe并安装在C:\Program Files (x86)\WiX Toolset v3.10下。在WiX Toolset v3.10\bin 里面我有wix.dllWixCop.exe 等。它们是你指的二进制文件吗?我仍然收到同样的错误 /.\ 我应该改成什么?
  • 非常感谢。我终于通过将win_env.AppendENVPath('PATH', (_sdk_dir + '\\bin\\' + _sdk_version + '\\x86')) 添加到main.scons 来解决它
猜你喜欢
  • 1970-01-01
  • 2022-08-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-15
  • 2022-11-29
  • 2014-02-06
相关资源
最近更新 更多