I needed to create a custom WiX build (based on 3.0.3617.0) to fix twobugs 
(1591591 & 1653864) that were plaguing us. We have been using WiXfor over a 
year on our project and other than those two bugs we havebeen really happy with 
the project. 
 
I have worked with other open source projects before and it surprisedme when I 
had so much trouble just getting the source to compile. MaybeI am crazy or I 
completely missed a vital readme document but I searchedhigh and low and didn't 
find any. 
The good news is I did finally get a working build, and the fixes mentionedin 
the bug comments both worked. Life is good again. :)
Here are the steps I had to do to make a working build, maybe they willhelp 
others. If needed I would be willing to help update WiX documentationand build 
process stuff, but I can't find docs on submitting changes either. ;)
1) Several DLLs are needed to build but are not part of the source tree. I did 
not find any documentation about this. I did see a mention of itin a WiX-users 
email somewhere but I can't find it again. Unless thereis a problem with 
redistribution rights I can't see why they are not inthe tree already.
 
  src\light\bin:    darice.cub    mergemod.cub    mergemod.dll      
src\pyro\bin:    mspatchc.dll      Release\debug:  Release\ship:    
ProjectAggregator2.msi  
 
2) A sibling folder tree to the wix-sources tree must be created 
 
  dtools\bin\x86\Nant:    Nant.Core.dll
 
  I am guessing this is the location on one of the developer's 
machines?Probably would be better to either add this DLL to the source tree or 
detectits location relative to the installed Nant binaries at build time. 
 
3) This drove me completely insane for over a day.
 
  src\votive\sconce\Properties\AssemblyInfo.cs    This file is different than 
what is in CVS, and seems to reference a PublicKey that is not from the 
publickey_wix.snk file. This causes Votive2005 to fail witherrors that are 
really not clear.
 
  Replace the InternalsVisibleTo lines and things get happy:
 
[assembly: InternalsVisibleTo("votive2005, 
PublicKey=0024000004800000940000000602000000240000525341310004000001000100d94aacc567fbd9fd7d60e04aca0817b2059b62d69630f24a07d699c4d5363ba24083a8ac9433b62c04cc6016bf7d528033ce655c1a0ee1b58f9cec3ad603525c9ca5319518ad2aeecf1a1263727e246db0603b72f2d49e65dc21a0e4d5ab65b846759d5f49529014b8766cb5a8b8daf987f25a49839dd3e538954d3a4ed938c4")][assembly:
 InternalsVisibleTo("votive2008, 
PublicKey=0024000004800000940000000602000000240000525341310004000001000100d94aacc567fbd9fd7d60e04aca0817b2059b62d69630f24a07d699c4d5363ba24083a8ac9433b62c04cc6016bf7d528033ce655c1a0ee1b58f9cec3ad603525c9ca5319518ad2aeecf1a1263727e246db0603b72f2d49e65dc21a0e4d5ab65b846759d5f49529014b8766cb5a8b8daf987f25a49839dd3e538954d3a4ed938c4")]
 
  My guess is that the source zip was created after the file was modified to 
usethe key that the binaries/msi are generated with and that is not the same 
key asis distributed with the sources.
 
4) src\Setup\Votive.wxs references the Sconce2008/Votive2008 DLLs even 
thoughthey were not built since I do not have VS2008 installed. I deleted the 
contentsof the two 2008 components and made the component itself KeyPath="yes". 
Completekludge, but it worked. 
 
 
 
_________________________________________________________________
Don't get caught with egg on your face. Play Chicktionary!
http://club.live.com/chicktionary.aspx?icid=chick_wlhmtextlink1_dec
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to