B
Bern McCarty
We have a large mixed dll that I can never seem to get to link incrementally.
Below is the console output. For simplicity I've eliminated some stuff that
we normally do when we really link this dll like manifest embedding and strong
name delay signing. Can anyone see anything wrong with my link command?
Or offer some other explanation why I can never get an incremental link out
of it? To test, I'm just touching one of the source files so it recompiles/links,
but it does a full link every time.
In the below console output I eliminated the actual .obj and .lib lists for
brevity.
-Bern McCarty, Bentley Systems
[== Building o:\out\1\Mstn\Bentley\MicroStation\ustation.dll, (o:\out\1\Mstn\build\mscore\core\mdelemnt.obj)
==]
link -out:\out\1\Mstn\Bentley\MicroStation\ustation.dll -assemblydebug
-WX -OPT:NoWin98 -OPT:NOREF -OPT:NOICF -Ignore:4087 -Ignore:4089 -debug
-incremental -fixed:no @o:\out\1
\Mstn\build\mscore\core\link.rsp
Microsoft (R) Incremental Linker Version 8.00.50727.762
Copyright (C) Microsoft Corporation. All rights reserved.
-test
-time
-BASEo:\out\1\Mstn\build\gensrc\ntbsaddr.linker,ustation.dll
-delaysign -keyfile:s:\src\Mozart1\bsitools\PublicPrgRightsCompliant.snk
-ASSEMBLYLINKRESOURCE:\out\1\Mstn\Bentley\MicroStation\ustation.resources
-pdb:\out\1\Mstn\Bentley\MicroStation\ustation.pdb
-manifestfile:\out\1\Mstn\build\mscore\core\Ustation.dll.LinkerGenerated.Manifest
o:\out\1\Mstn\build\mscore\core\mdlbltin.exp
o:\out\1\Mstn\build\mscore\core\mdlmod.obj
.....tons of other objs here...
o:\out\1\Mstn\SDK\Delivery\MicroStation\mdl\library\rmgrsubs.lib
....lots of other libs here...
o:\out\1\Mstn\build\mscore\core\ustndllresource.res
LINK : file alignment: 512, section alignment: 4096
LINK : performing full link
LINK : file alignment: 512, section alignment: 4096
MD Merge: Total time = 12.948s
Generate Transitions: Total time = 0.651s
mdlmod.obj : section 'ATL' (40000040) merged into '.rdata' (40000040)
msvcrt.lib(initsect.obj) : section '.rtc' (40000040) merged into '.rdata'
(40000040)
msvcrt.lib(cinitexe.obj) : section '.CRT' (40000040) merged into '.rdata'
(40000040)
MSVCMRT.lib(mstartup.obj) : section '.CRTMP' (40000040) merged into '.rdata'
(40000040)
MSVCMRT.lib(mstartup.obj) : section '.CRTMA' (40000040) merged into '.rdata'
(40000040)
MSVCMRT.lib(mstartup.obj) : section '.CRTVT' (40000040) merged into '.rdata'
(40000040)
LINK : section '.sdata' (C0000040) merged into '.data' (C0000040)
LINK : section '.xdata' (40000040) merged into '.rdata' (40000040)
MD Finalize: Total time = 7.982s
Pass 1: Interval #1, time = 25.146s
Pass 2: Interval #2, time = 6.860s
Final: Total time = 32.006s
Final: Total time = 41.189
Below is the console output. For simplicity I've eliminated some stuff that
we normally do when we really link this dll like manifest embedding and strong
name delay signing. Can anyone see anything wrong with my link command?
Or offer some other explanation why I can never get an incremental link out
of it? To test, I'm just touching one of the source files so it recompiles/links,
but it does a full link every time.
In the below console output I eliminated the actual .obj and .lib lists for
brevity.
-Bern McCarty, Bentley Systems
[== Building o:\out\1\Mstn\Bentley\MicroStation\ustation.dll, (o:\out\1\Mstn\build\mscore\core\mdelemnt.obj)
==]
link -out:\out\1\Mstn\Bentley\MicroStation\ustation.dll -assemblydebug
-WX -OPT:NoWin98 -OPT:NOREF -OPT:NOICF -Ignore:4087 -Ignore:4089 -debug
-incremental -fixed:no @o:\out\1
\Mstn\build\mscore\core\link.rsp
Microsoft (R) Incremental Linker Version 8.00.50727.762
Copyright (C) Microsoft Corporation. All rights reserved.
-test
-time
-BASEo:\out\1\Mstn\build\gensrc\ntbsaddr.linker,ustation.dll
-delaysign -keyfile:s:\src\Mozart1\bsitools\PublicPrgRightsCompliant.snk
-ASSEMBLYLINKRESOURCE:\out\1\Mstn\Bentley\MicroStation\ustation.resources
-pdb:\out\1\Mstn\Bentley\MicroStation\ustation.pdb
-manifestfile:\out\1\Mstn\build\mscore\core\Ustation.dll.LinkerGenerated.Manifest
o:\out\1\Mstn\build\mscore\core\mdlbltin.exp
o:\out\1\Mstn\build\mscore\core\mdlmod.obj
.....tons of other objs here...
o:\out\1\Mstn\SDK\Delivery\MicroStation\mdl\library\rmgrsubs.lib
....lots of other libs here...
o:\out\1\Mstn\build\mscore\core\ustndllresource.res
LINK : file alignment: 512, section alignment: 4096
LINK : performing full link
LINK : file alignment: 512, section alignment: 4096
MD Merge: Total time = 12.948s
Generate Transitions: Total time = 0.651s
mdlmod.obj : section 'ATL' (40000040) merged into '.rdata' (40000040)
msvcrt.lib(initsect.obj) : section '.rtc' (40000040) merged into '.rdata'
(40000040)
msvcrt.lib(cinitexe.obj) : section '.CRT' (40000040) merged into '.rdata'
(40000040)
MSVCMRT.lib(mstartup.obj) : section '.CRTMP' (40000040) merged into '.rdata'
(40000040)
MSVCMRT.lib(mstartup.obj) : section '.CRTMA' (40000040) merged into '.rdata'
(40000040)
MSVCMRT.lib(mstartup.obj) : section '.CRTVT' (40000040) merged into '.rdata'
(40000040)
LINK : section '.sdata' (C0000040) merged into '.data' (C0000040)
LINK : section '.xdata' (40000040) merged into '.rdata' (40000040)
MD Finalize: Total time = 7.982s
Pass 1: Interval #1, time = 25.146s
Pass 2: Interval #2, time = 6.860s
Final: Total time = 32.006s
Final: Total time = 41.189