Re: Question about builds using Team Foundation Build Server
- From: Roy Chastain <roy@xxxxxxxxx>
- Date: Fri, 12 Jan 2007 06:36:16 -0500
Apparently my description was not clear.
1) - There is a dependency between VS Solutions. Solution A contains 15 projects. Each of those produces 1 dll.
Solution B contains 6 projects (2 exe and 4 dlls) Each of those projects references one or more of the 15 dlls from Solution A
Solution C contains 20 projects (4 exe and 16 dlls) Each of these projects references MANY of the dlls from Solutions A and B.
There for there is a dependency. Solution A must always be up to date before B and C are generated and, if some parts of A
change, then B must also be regenerated before C and be built.
2) - No, I did not put the output of A, B and C in the same directory. I put the output of each solution into its on directory
EXAMPLE
Solution A, contains projects Core, CoreCPP and Crypto. Core and Crypto are C# CoreCPP is managed C++.
The default output directories would be
A\Core\bin\Release
A\Release (for the mC++ code)
A\Crypto\bin\Release
I have redirected all of the output to A\bin\Release
(this step was done on the advice of MS Support on a paid incident) The reason is because the mC++ dll causes other C# dlls to
also be copied into the A\Release directory and it uses a reference path to them in that location instead of the real location of
A\project\bin\Release and when all of these are referenced in the B and C solutions, VS gets totally confused and things that
there are 2 different version of many of the DLLs and produces about 1500 warnings. (This is a 2005 only issue - well, 2003
handled it better; but not correctly - when I switched my builds from 2003 to 2005 and the warning started the build went from 1
min to 15 mins for solution C.
Now back to the question.
In VS builds, the reference path to DLLS not contained in the solution is all important (as outlined above). How does the Batch
build done by build server know where to pick up dependent DLLs. If it is using the paths from the .cproj files they will be
1) on a different system
2) not the ones created in the batch build.
(PS. Combining these solutions does not make sense from an architecture point of view - A and B are both used by other solutions
that do not use C etc - and I have been told by more than one MS VS support person that I am already pushing the limits of VS with
the number of projects in the solutions as they currently exist.
On Fri, 12 Jan 2007 05:24:41 GMT, v-kevy@xxxxxxxxxxxxxxxxxxxx (Kevin Yu [MSFT]) wrote:
Hi Roy,-------------------------------------------
Based on your description, you have set the build path of solution A,B,C to
the same folder on the build server by creating a Build Type. Actually, to
the build process, solutions themselves do not have dependencies. In this
case, you only need to set the Build Path and (or) Drop Location of
solution D to the same as solution A,B,C.
If solution D depends on the built assemblies from solution A,B,C, it will
be better to put solution D project together with solution A,B,C, so that
the build sequence can be set in the solution.
If there is any misunderstanding, please feel free to let me know.
Kevin Yu
Microsoft Online Community Support
==================================================
Get notification to my posts through email? Please refer to
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications.
Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
(This posting is provided "AS IS", with no warranties, and confers no
rights.)
Roy Chastain
KMSYS Worldwide, Inc.
http://www.kmsys.com
.
- Follow-Ups:
- Re: Question about builds using Team Foundation Build Server
- From: Kevin Yu [MSFT]
- Re: Question about builds using Team Foundation Build Server
- References:
- Question about builds using Team Foundation Build Server
- From: Roy Chastain
- RE: Question about builds using Team Foundation Build Server
- From: Kevin Yu [MSFT]
- Question about builds using Team Foundation Build Server
- Prev by Date: Re: Migrating ASP.NET Application from 1.1 to 2.0
- Next by Date: corrupted dlls when stopping a build
- Previous by thread: RE: Question about builds using Team Foundation Build Server
- Next by thread: Re: Question about builds using Team Foundation Build Server
- Index(es):
Relevant Pages
|
Loading