<div dir="ltr">The purpose of linking the CRT statically was to ensure that clang can run on systems that don't have the CRT already installed from some other app or by VS itself. As long as that is preserved, feel free to do whatever you need.<div><br></div><div>I think we still want to link vcruntime140 statically and the C++ runtime statically, for example.<br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jan 11, 2017 at 10:45 AM, Zachary Turner via lldb-dev <span dir="ltr"><<a href="mailto:lldb-dev@lists.llvm.org" target="_blank">lldb-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Is static CRT even still supported / recommended when using the new Universal CRT?  My understanding is the new UCRT is considered a core windows component, so we don't ahve to distribute redistributables anymore.  Maybe I'm wrong about this.<div><br></div><div>That said, I think we want dynamic regardless, otherwise we're back in the same boat of user having to compile Python, which is the exact thing 3.5+ is supposed to solve.  We should just always use dynamic so the user doesn't have to do anything and it just works.</div></div><div class="HOEnZb"><div class="h5"><br><div class="gmail_quote"><div dir="ltr">On Wed, Jan 11, 2017 at 10:41 AM Vadim Chugunov <<a href="mailto:vadimcn@gmail.com" target="_blank">vadimcn@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_-2522297215257709881gmail_msg">Sorry, just found another problem: the installed lldb crashes when given a script via the command line.  For example, `lldb -O "p 42"` dies with exception 0xC0000409.<div class="m_-2522297215257709881gmail_msg"><div class="m_-2522297215257709881gmail_msg"><div class="m_-2522297215257709881gmail_msg"><br class="m_-2522297215257709881gmail_msg"><div class="m_-2522297215257709881gmail_msg">It didn't happen with the one I've build locally, so I started digging... The difference seems to be that build_llvm_build_package.bat links CRT statically (-DLLVM_USE_CRT_RELEASE=MT), whereas default is the dynamic CRT.  </div><div class="m_-2522297215257709881gmail_msg">The crash kinda makes sense, because python35.dll links CRT dynamically, so LLDB ends up with two copies of it in the process, which is known to cause all sorts of trouble.</div><div class="m_-2522297215257709881gmail_msg"><br class="m_-2522297215257709881gmail_msg"></div><div class="m_-2522297215257709881gmail_msg">Not sure what to do about this one, - you probably wanted static CRT to avoid having to install MSVC redistributable?</div></div></div></div></div><div dir="ltr" class="m_-2522297215257709881gmail_msg"><div class="m_-2522297215257709881gmail_msg"><div class="m_-2522297215257709881gmail_msg"><div class="m_-2522297215257709881gmail_msg"><div class="m_-2522297215257709881gmail_msg"><br class="m_-2522297215257709881gmail_msg"></div><div class="m_-2522297215257709881gmail_msg"><div class="gmail_extra m_-2522297215257709881gmail_msg"><br class="m_-2522297215257709881gmail_msg"><div class="gmail_quote m_-2522297215257709881gmail_msg">On Tue, Jan 10, 2017 at 7:00 PM, Vadim Chugunov <span dir="ltr" class="m_-2522297215257709881gmail_msg"><<a href="mailto:vadimcn@gmail.com" class="m_-2522297215257709881gmail_msg" target="_blank">vadimcn@gmail.com</a>></span> wrote:<br class="m_-2522297215257709881gmail_msg"><blockquote class="gmail_quote m_-2522297215257709881gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr" class="m_-2522297215257709881gmail_msg">Yes, the new build works!</div><div class="gmail_extra m_-2522297215257709881gmail_msg"><br class="m_-2522297215257709881gmail_msg"><div class="gmail_quote m_-2522297215257709881gmail_msg">On Tue, Jan 10, 2017 at 6:20 PM, Hans Wennborg <span dir="ltr" class="m_-2522297215257709881gmail_msg"><<a href="mailto:hans@chromium.org" class="m_-2522297215257709881gmail_msg" target="_blank">hans@chromium.org</a>></span> wrote:<br class="m_-2522297215257709881gmail_msg"><blockquote class="gmail_quote m_-2522297215257709881gmail_msg" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I've downgraded my swig to 3.0.8 and built a new snapshot (r291454).<br class="m_-2522297215257709881gmail_msg">
Please let me know if that works.<br class="m_-2522297215257709881gmail_msg">
<br class="m_-2522297215257709881gmail_msg">
On Tue, Jan 10, 2017 at 10:14 AM, Zachary Turner <<a href="mailto:zturner@google.com" class="m_-2522297215257709881gmail_msg" target="_blank">zturner@google.com</a>> wrote:<br class="m_-2522297215257709881gmail_msg">
> It sounds like the solution to the problem is to downgrade SWIG on the build<br class="m_-2522297215257709881gmail_msg">
> machine.  If it's using version 3.0.9 or higher, just use whatever the last<br class="m_-2522297215257709881gmail_msg">
> version before that is.  3.0.8, for example.<br class="m_-2522297215257709881gmail_msg">
><br class="m_-2522297215257709881gmail_msg">
> At least there's a good workaround in the interim (i.e. setting PYTHONPATH)<br class="m_-2522297215257709881gmail_msg">
><br class="m_-2522297215257709881gmail_msg">
> On Tue, Jan 10, 2017 at 10:06 AM Hans Wennborg <<a href="mailto:hans@chromium.org" class="m_-2522297215257709881gmail_msg" target="_blank">hans@chromium.org</a>> wrote:<br class="m_-2522297215257709881gmail_msg">
>><br class="m_-2522297215257709881gmail_msg">
>> I'll do another snapshot maybe next week or the week after. You can<br class="m_-2522297215257709881gmail_msg">
>> also ping me if you want it sooner or later.<br class="m_-2522297215257709881gmail_msg">
>><br class="m_-2522297215257709881gmail_msg">
>> We're kicking off the release process for 4.0.0 on Thursday. I don't<br class="m_-2522297215257709881gmail_msg">
>> fully understand the problem here, but if there's some way to work<br class="m_-2522297215257709881gmail_msg">
>> around it and get lldb into good shape for the 4.0.0 installer, that<br class="m_-2522297215257709881gmail_msg">
>> would be great.<br class="m_-2522297215257709881gmail_msg">
>><br class="m_-2522297215257709881gmail_msg">
>> Thanks,<br class="m_-2522297215257709881gmail_msg">
>> Hans<br class="m_-2522297215257709881gmail_msg">
>><br class="m_-2522297215257709881gmail_msg">
>> On Mon, Jan 9, 2017 at 10:40 PM, Vadim Chugunov <<a href="mailto:vadimcn@gmail.com" class="m_-2522297215257709881gmail_msg" target="_blank">vadimcn@gmail.com</a>> wrote:<br class="m_-2522297215257709881gmail_msg">
>> > This appears to be a SWIG bug: <a href="https://github.com/swig/swig/issues/769" rel="noreferrer" class="m_-2522297215257709881gmail_msg" target="_blank">https://github.com/swig/swig/<wbr>issues/769</a><br class="m_-2522297215257709881gmail_msg">
>> ><br class="m_-2522297215257709881gmail_msg">
>> > On Mon, Jan 9, 2017 at 9:14 PM, Vadim Chugunov <<a href="mailto:vadimcn@gmail.com" class="m_-2522297215257709881gmail_msg" target="_blank">vadimcn@gmail.com</a>><br class="m_-2522297215257709881gmail_msg">
>> > wrote:<br class="m_-2522297215257709881gmail_msg">
>> >><br class="m_-2522297215257709881gmail_msg">
>> >> It worked!<br class="m_-2522297215257709881gmail_msg">
>> >><br class="m_-2522297215257709881gmail_msg">
>> >> ...but not before I set PYTHONPATH=C:\Program Files<br class="m_-2522297215257709881gmail_msg">
>> >> (x86)\LLVM\lib\site-packages\<wbr>lldb<br class="m_-2522297215257709881gmail_msg">
>> >> Without that, it couldn't find the _lldb module, so we are not quite<br class="m_-2522297215257709881gmail_msg">
>> >> out<br class="m_-2522297215257709881gmail_msg">
>> >> of the woods yet.<br class="m_-2522297215257709881gmail_msg">
>> >><br class="m_-2522297215257709881gmail_msg">
>> >> When are you planning to make the next snapshot build?<br class="m_-2522297215257709881gmail_msg">
>> >> Thanks!<br class="m_-2522297215257709881gmail_msg">
>> >><br class="m_-2522297215257709881gmail_msg">
>> >><br class="m_-2522297215257709881gmail_msg">
>> >> On Mon, Jan 9, 2017 at 3:48 PM, Hans Wennborg <<a href="mailto:hans@chromium.org" class="m_-2522297215257709881gmail_msg" target="_blank">hans@chromium.org</a>><br class="m_-2522297215257709881gmail_msg">
>> >> wrote:<br class="m_-2522297215257709881gmail_msg">
>> >>><br class="m_-2522297215257709881gmail_msg">
>> >>> Vadim, it looks like your change was committed in r291291, and I've<br class="m_-2522297215257709881gmail_msg">
>> >>> built a new snapshot today which includes it. Can you give it a try<br class="m_-2522297215257709881gmail_msg">
>> >>> and see if everything works?<br class="m_-2522297215257709881gmail_msg">
>> >>><br class="m_-2522297215257709881gmail_msg">
>> >>> Cheers,<br class="m_-2522297215257709881gmail_msg">
>> >>> Hans<br class="m_-2522297215257709881gmail_msg">
>> >>><br class="m_-2522297215257709881gmail_msg">
>> >>> On Thu, Jan 5, 2017 at 10:46 AM, Zachary Turner <<a href="mailto:zturner@google.com" class="m_-2522297215257709881gmail_msg" target="_blank">zturner@google.com</a>><br class="m_-2522297215257709881gmail_msg">
>> >>> wrote:<br class="m_-2522297215257709881gmail_msg">
>> >>> > I will commit it, in the meantime can you request commit access so<br class="m_-2522297215257709881gmail_msg">
>> >>> > that<br class="m_-2522297215257709881gmail_msg">
>> >>> > any<br class="m_-2522297215257709881gmail_msg">
>> >>> > future patches you can commit?<br class="m_-2522297215257709881gmail_msg">
>> >>> ><br class="m_-2522297215257709881gmail_msg">
>> >>> > On Wed, Jan 4, 2017 at 1:54 PM Vadim Chugunov <<a href="mailto:vadimcn@gmail.com" class="m_-2522297215257709881gmail_msg" target="_blank">vadimcn@gmail.com</a>><br class="m_-2522297215257709881gmail_msg">
>> >>> > wrote:<br class="m_-2522297215257709881gmail_msg">
>> >>> >><br class="m_-2522297215257709881gmail_msg">
>> >>> >> Thanks!<br class="m_-2522297215257709881gmail_msg">
>> >>> >><br class="m_-2522297215257709881gmail_msg">
>> >>> >> Would anyone be so kind to commit that?<br class="m_-2522297215257709881gmail_msg">
>> >>> >><br class="m_-2522297215257709881gmail_msg">
>> >>> >> On Wed, Jan 4, 2017 at 11:47 AM, Zachary Turner<br class="m_-2522297215257709881gmail_msg">
>> >>> >> <<a href="mailto:zturner@google.com" class="m_-2522297215257709881gmail_msg" target="_blank">zturner@google.com</a>><br class="m_-2522297215257709881gmail_msg">
>> >>> >> wrote:<br class="m_-2522297215257709881gmail_msg">
>> >>> >>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>> Sorry, a combination of national holidays and extended vacations<br class="m_-2522297215257709881gmail_msg">
>> >>> >>> happened<br class="m_-2522297215257709881gmail_msg">
>> >>> >>> and this fell off my radar.  lgtm<br class="m_-2522297215257709881gmail_msg">
>> >>> >>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>> On Wed, Jan 4, 2017 at 11:46 AM Vadim Chugunov <<a href="mailto:vadimcn@gmail.com" class="m_-2522297215257709881gmail_msg" target="_blank">vadimcn@gmail.com</a>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>> wrote:<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>> Zachary,<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>> Can you please take a look at that change?<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>> (<a href="https://reviews.llvm.org/D27476" rel="noreferrer" class="m_-2522297215257709881gmail_msg" target="_blank">https://reviews.llvm.org/<wbr>D27476</a>)<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>> It'll be sad if another snapshot build gets published with broken<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>> lldb.<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>> :(<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>> On Tue, Dec 6, 2016 at 11:54 AM, Vadim Chugunov<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>> <<a href="mailto:vadimcn@gmail.com" class="m_-2522297215257709881gmail_msg" target="_blank">vadimcn@gmail.com</a>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>> wrote:<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>> This seems to work: <a href="https://reviews.llvm.org/D27476" rel="noreferrer" class="m_-2522297215257709881gmail_msg" target="_blank">https://reviews.llvm.org/<wbr>D27476</a><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>> On Mon, Dec 5, 2016 at 12:04 PM, Hans Wennborg<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>> <<a href="mailto:hans@chromium.org" class="m_-2522297215257709881gmail_msg" target="_blank">hans@chromium.org</a>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>> wrote:<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> The only thing needed to build the installer should be having<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> NSIS<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> installed and building the "package" target generated by CMake.<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> The<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> other prerequisites are mostly for building the visual studio<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> clang-format plugin.<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> Having said that, you don't even have to build the installer to<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> see<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> what goes in it. Just building the "install" target generated<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> by<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> CMake<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> will install the same set of files.<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> I'm not sure how LLDB's cmake files are organized, but in the<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> end<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> what's required is invoking the install() command:<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> <a href="https://cmake.org/cmake/help/v3.0/command/install.html" rel="noreferrer" class="m_-2522297215257709881gmail_msg" target="_blank">https://cmake.org/cmake/help/<wbr>v3.0/command/install.html</a>  In<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> LLVM,<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> this<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> is done automatically by macros such as add_llvm_executale,<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> etc.<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> On Mon, Dec 5, 2016 at 11:56 AM, Vadim Chugunov<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> <<a href="mailto:vadimcn@gmail.com" class="m_-2522297215257709881gmail_msg" target="_blank">vadimcn@gmail.com</a>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> wrote:<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > Hi Hans,<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> ><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > I'd love to help, but I don't have half the tools that<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > build_llvm_package.bat requires installed on my machine.  My<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > setup<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > is to<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > build llvm with msbuild.   Is it possible to build the<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > installer<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > this way<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > too?<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> ><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > Can you point me to the specific CMake source that determines<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > what's<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > included in the package?   At a glance, everything from<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > %LLVM%/lib/site-packages is missing.<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> ><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > Vadim<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> ><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > On Mon, Dec 5, 2016 at 10:41 AM, Hans Wennborg<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > <<a href="mailto:hans@chromium.org" class="m_-2522297215257709881gmail_msg" target="_blank">hans@chromium.org</a>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> > wrote:<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> Is anyone working on this?<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> I'm happy to include LLDB in the installer, but I'm really<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> not<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> the<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> best person to be debugging it.<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> If more files need to be included in the install, that's<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> configured<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> in<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> the CMake files (what's installed by the 'install' build<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> target<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> is<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> also what ends up going into the installer). If it needs<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> more<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> build<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> >> flags, patches to build_llvm_package.bat are welsome.<br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> ><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> ><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>>> ><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >>>><br class="m_-2522297215257709881gmail_msg">
>> >>> >><br class="m_-2522297215257709881gmail_msg">
>> >>> ><br class="m_-2522297215257709881gmail_msg">
>> >><br class="m_-2522297215257709881gmail_msg">
>> >><br class="m_-2522297215257709881gmail_msg">
>> ><br class="m_-2522297215257709881gmail_msg">
</blockquote></div><br class="m_-2522297215257709881gmail_msg"></div>
</blockquote></div><br class="m_-2522297215257709881gmail_msg"></div></div></div></div></div></div></blockquote></div>
</div></div><br>______________________________<wbr>_________________<br>
lldb-dev mailing list<br>
<a href="mailto:lldb-dev@lists.llvm.org">lldb-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/lldb-dev</a><br>
<br></blockquote></div><br></div></div></div>