Dear Andrew, My distribution of Windows-OpenACS (http://www.spazioit.com/pages_en/sol_inf_en/windows-openacs_en/). Contains the sources and the various makefiles. It uses "nmake" and has been compiled with Visual Studio 2013.
It does work, it is reliable and is used by various production sites. BTW: I did compile with the same options not only Aolserver but also TCL. Maurizio -----Original Message----- From: Andrew Piskorski [mailto:a...@piskorski.com] Sent: 17 November 2014 16:41 To: naviserver-devel@lists.sourceforge.net Cc: itan...@archiware.com Subject: Re: [naviserver-devel] more logging problems on Windows On Mon, Nov 17, 2014 at 10:36:48AM +0100, Gustaf Neumann wrote: > The problem is not a argument-passing or memory problem, but seems to > be a linking problem. When a file is opened in a module (here nslog) > only this module can write successfully to this file. Under Windows > other dlls can't write to it, even when they write to the same fd. It > seems to me as if the nslog dll is linked to a private runtime > environment. Very interesting! Good detective work, Gustaf. > Andrew, can you compare the linking options for nslog with these from > Maurizio? I don't know what link options Maurizio is using. On Mon, Nov 17, 2014 at 01:05:28PM +0100, Gustaf Neumann wrote: > that's a very good hint: AFIKT, all the modules used already the same > /M* options. However, i've changed the runtime library option from > /MT* to MD* (multi-threaded version) and a quick test (fildes to > windows handle conversion) indicates that the strange behavior is > gone. We've been using /MTd (or plain /MT for non-debug builds) for everything, because that's what was in the include/Makefile.win32 Ibrahim sent me, which was identical to the version in Mercurial last touched by Vlad Seryakov back in 2007. >From Microsoft's docs: http://msdn.microsoft.com/en-us/library/2kzt1wy3%28v=vs.110%29.aspx http://support.microsoft.com/kb/140584/en-us "/MT" is the "multithread, static version" "/MD" is the "multithread- and DLL-specific version" Microsoft warns about mixing two different versions of the run-time library, but says nothing about the mysterious file IO behavior we saw with /MTd. I looked through my three hardcopy books on Windows system programming and found nothing relevant there either. The most useful discussion I found of /MT vs. /MD (although still not at all complete) was here: http://stackoverflow.com/questions/757418/should-i-compile-with-md-or-mt It sounds like /MDd is the right default for Naviserver's Windows builds. I haven't tried that or updated to Gustaf's latest code yet, but will do so soon. I'm compiling and running Naviserver on the same machine anyway, so /MD should be completely fine for my use. From the discussion above, it sounds like someone distributing compiled binaries to run on other machines MIGHT prefer to use /MT to simplify their application install process, but even there /MD is still probably the correct default. -- Andrew Piskorski <a...@piskorski.com> ---------------------------------------------------------------------------- -- Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk _______________________________________________ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel ------------------------------------------------------------------------------ Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk _______________________________________________ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel