【问题标题】:Travis-ci boost log compilation with biicode time-out带有 biicode 超时的 Travis-ci 提升日志编译
【发布时间】:2015-02-22 10:06:08
【问题描述】:

我正在使用 travis-ci 和 biicode 来构建依赖于 boost 日志的项目。但是提升日志时间超过 10 分钟,所以我收到了这条消息:

No output has been received in the last 10 minutes, this potentially indicates a
stalled build or something wrong with the build itself.
The build has been terminated

构建工作正常,只是 boost 日志在资源有限的情况下编译确实很长(我尝试在具有 1 个 CPU 和 2GB 内存的 VM 上编译它,耗时几乎超过 15 分钟)

我知道这种情况正在发生,因为没有足够的详细信息,所以我尝试了以下标志:

  1. >bii cpp:build -- VERBOSE=1
  2. 在 CMakeList.txt 中,将 BII_BOOST_VERBOSE 设置为提及here
  3. 按照here 的说明设置 BOOST_LOG_COMPILE_FAST_ON
  4. 使用travis_wait

实际上 travis_wait 似乎是正确的解决方案,但是当我像这样将它放在我的 .travis.yml 中时

script: travis_wait bii cpp:build

它实际上并没有像通常那样输出日志,只是在 20 分钟后超时。我不认为实际的建筑正在发生

处理这个问题的正确方法是什么?

【问题讨论】:

    标签: boost travis-ci boost-log biicode


    【解决方案1】:

    这是一个已知问题,Boost.Log 需要很长时间才能编译。

    您可以使用travis_wait 呼叫bii cpp:configure,但我支持您,我需要日志反馈(没有双关语)。但是,我也尝试过,并导致构建超过 50 分钟,这意味着 travis 中止在免费帐户上构建 :( 当然,我的 repo 不仅仅构建 Boost.Log。

    请注意,这里是来自boost-biicode repo 的settings.py 文件的一部分:

    #Boost.Log takes so much time to compile, leads to timeouts on Travis CI
    #It was tested on Windows and linux, works 'ok' (Be careful with linking settings)
    if args.ci: del packages['examples/boost-log']  
    

    我目前正在研究一种解决方案,在打印进度的同时启动异步构建。检查this issue。这周就准备好了:)

    要加快构建速度,请尝试使用 BII_BOOST_BUILD_J 变量来设置构建 Boost 组件所需的线程数。这是一个例子:

    script:
    - bii cpp:configure -DBII_BOOST_BUILD_J=4
    

    请注意,更多线程意味着一次编译需要更多 RAM。确保不要让 travis 作业 VM 内存不足。

    【讨论】:

      猜你喜欢
      • 2019-10-10
      • 1970-01-01
      • 2014-04-17
      • 1970-01-01
      • 1970-01-01
      • 2023-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多