[CMake] InstallRequiredSystemLibraries.cmake and Redistribution of the shared C runtime component in Visual C++

Mike Jackson mike.jackson at bluequartz.net
Thu Aug 20 18:03:15 EDT 2009


So I "created" the proper paths within the VCExpress installation and
placed the downloaded vcredist_x86.exe file in there. CMake found it.
NSIS found it and included it. I ran my new installer on a "clean" XP
SP3 machine. Verified the vcredist.exe actually ran also. Tried to
launch an application and I still get an error that says the
application is not configured correctly.

Still lost and Confused.

Mike

On Thu, Aug 20, 2009 at 5:40 PM, j s<j.s4403 at gmail.com> wrote:
> I don't believe that to be the case with Visual Express 2008.  I don't know
> how previous editions work.
>
> Can I use Express Editions for commercial use?
>
> Yes, there are no licensing restrictions for applications built using Visual
> Studio Express Editions.
>
> http://www.microsoft.com/express/support/faq/
>
> Juan
>
>
>
> On Thu, Aug 20, 2009 at 4:33 PM, David Cole <david.cole at kitware.com> wrote:
>>
>> Hold on there...
>> The Express editions are not meant to build redistributable binaries.
>> They're meant for personal use: i.e. -- each user compiles his own code. I'm
>> pretty sure it's a violation of the Express edition license agreement to
>> build binaries for other people. You need at least the "Standard" edition of
>> VS to get that capability.
>>
>>
>> HTH,
>> David
>>
>> On Thu, Aug 20, 2009 at 5:11 PM, Mike Jackson
>> <mike.jackson at bluequartz.net> wrote:
>>>
>>> On Thu, Aug 20, 2009 at 4:06 PM, James Bigler<jamesbigler at gmail.com>
>>> wrote:
>>> > On Thu, Aug 20, 2009 at 1:51 PM, Mike Jackson
>>> > <mike.jackson at bluequartz.net>
>>> > wrote:
>>> >>
>>> >> On Thu, Aug 6, 2009 at 3:12 PM, Marcus D. Hanwell<marcus at cryos.org>
>>> >> wrote:
>>> >> > James Bigler wrote:
>>> >> >> On Thu, Aug 6, 2009 at 12:10 PM, Bill Hoffman
>>> >> >> <bill.hoffman at kitware.com <mailto:bill.hoffman at kitware.com>> wrote:
>>> >> >>
>>> >> >>     James Bigler wrote:
>>> >> >>
>>> >> >>
>>> >> >>         Well, I was using VS 2005 64 bit with SP 1.  I wonder if
>>> >> >> there
>>> >> >>         is a similar bug or if there is something else going wrong
>>> >> >>         such as what Marcus Hanwall described.
>>> >> >>
>>> >> >>
>>> >> >>     I am not sure what your issue is, but I know I have done this
>>> >> >> many
>>> >> >>     times...
>>> >> >>
>>> >> >>     -Bill
>>> >> >>
>>> >> >>
>>> >> >> I checked the version numbers of the DLLs, and even checked the
>>> >> >> md5sum
>>> >> >> and everything was the same between the dlls in the WinSxS folder
>>> >> >> and
>>> >> >> the ones I'm distributing.  It failed on two clean systems without
>>> >> >> the
>>> >> >> vcredist install.  I guess I'll run vcredist as Microsoft suggests
>>> >> >> and
>>> >> >> see if I can trouble shoot later.
>>> >> >>
>>> >> >> It is a rather perplexing problem.
>>> >> >>
>>> >> > The link Bill supplied has all of the relevant information. In the
>>> >> > "Community Discussion" section the second comment provides three
>>> >> > possible workarounds. We are using the third of those when
>>> >> > distributing
>>> >> > Avogadro packages for Windows. The version mismatch in the manifests
>>> >> > of
>>> >> > the compiled executables and the manifest with the redistributable
>>> >> > DLLs
>>> >> > is what causes the issue.
>>> >> >
>>> >> > It seems that MS has no intention of fixing this issue. We have a
>>> >> > clean
>>> >> > VM where we test new installers, as occasionally this change was
>>> >> > lost
>>> >> > and the DLLs failed to load.
>>> >> >
>>> >> > Marcus
>>> >>
>>> >> Ok, so I too have run into this problem. What is anyone doing to get
>>> >> around this issue?
>>> >>
>>> >> I would really like a solution that did NOT involve editing anything
>>> >> from VC++ install as I would have to pass those instructions on to the
>>> >> next Developer. Clinton's posting about including the VCRedist.exe in
>>> >> the NSIS installer is OK by me. Is that what everyone else is doing?
>>> >>
>>> >> Thanks
>>> >> --
>>> >> Mike Jackson
>>> >
>>> > I ended up linking against the static CRT library (/MT), but that's not
>>> > for
>>> > everyone.
>>> > http://msdn.microsoft.com/en-us/library/ms235460.aspx
>>> >
>>> > My next choice was going to be including the VCRedist.exe in the
>>> > installer.
>>> > For some of the other projects at my company, this is what they do.
>>> >
>>> > Here are some links I've been consulting on the subject of CRT library
>>> > (conflicts with multiple CRTs).
>>> >
>>> > http://stackoverflow.com/questions/1075050/howto-multiple-versions-of-msvcrt9-as-private-sxs-assemblies
>>> >
>>> > http://tedwvc.wordpress.com/2009/08/10/avoiding-problems-with-vc2005-sp1-security-update-kb971090/
>>> >
>>> > http://stackoverflow.com/questions/1265792/visual-studio-2005-security-updates-and-crt-dll-versions-in-manifest
>>> >
>>> > James
>>> >
>>>
>>> thanks for the links. Now my head is really spinning. I have VC2008
>>> Express installed on WinXP SP3 and evidently the vcredist.exe is NOT
>>> included with that version? At least I can not find it.  So I guess I
>>> have to download it from MSDN (duh) and then manually set all the
>>> paths and all that in oder to have cmake/NSIS find and include it in
>>> the installer. And I thought deploying on OS X was a bit obtuse...
>>>
>>> Mike
>>> _______________________________________________


More information about the CMake mailing list