[wix-devs] Black-Box Analysis of the "Unexpected PDB error while running build.cmd" Problem

Rob Mensching rob at firegiant.com
Sun Jul 11 09:36:30 PDT 2021


That list defines the "layers" of the build.

Build/rebuilding layers in order is a way to minimize the chance of hitting the Microsoft PDB error.

Once a layer is built successfully, you don't have to go back and build it again until you change something in it.

-----Original Message-----
From: wix-devs <wix-devs-bounces at lists.wixtoolset.org> On Behalf Of Ron Martin via wix-devs
Sent: Sunday, July 11, 2021 7:10 AM
To: wix-devs <wix-devs at lists.wixtoolset.org>
Cc: Ron Martin <cpuwzd at comcast.net>
Subject: [wix-devs] Black-Box Analysis of the "Unexpected PDB error while running build.cmd" Problem

build.cmd is executed from the wix4 folder. It takes an optional "release" parameter. It executes build_all.cmd from the wix4\src folder, passing along the optional "release" parameter.

build_all.cmd is executed from the wix4\src folder. It takes an optional "release" parameter.

The functionality of executing build.cmd from the wix4 folder with an optional "release" parameter can be achieved by executing a series of commands from the wix4\src folder. All but the first take an optional "release" parameter.
We will refer to this series of commands as the primary command sequence.

  * call build_init.cmd
  * call dtf\dtf.cmd
  * call internal\internal.cmd
  * call libs\libs.cmd
  * call api\api.cmd
  * call burn\burn.cmd
  * call wix\wix.cmd
  * call ext\ext.cmd
  * call test\test.cmd


    Executing the primary command sequence manually will accomplish the
    desired goal without
    generating an "unexpected PDB error" error. This will be considered
    the quiescent state.

    Furthermore, once quiescence has been reached, source code changes
    can be made. Using
    a list of the changed files, you can hopefully deduce a sub-sequence
    of the primary command
    sequence (notably not including the first command of the primary
    command sequence) that will
    restore quiescence.


    While working on Issue 5371, specifically in the area of C++ code
    that implements custom
    actions for the Util extension, I was repeatably able to return to
    quiescence by executing
    call ext\ext.cmd from wix4\src.

I look forward to confirmation of my hypothesis and any simplification or improvement in our build process to which it might lead.


WiX Toolset Developer Mailing List provided by FireGiant http://www.firegiant.com/

More information about the wix-devs mailing list