David,
David Taylor wrote:
On 13/08/2013 13:44, Martin Burnicki wrote:
[]
Take care if you have also installed some stuff from David Taylor. This
is perfectly fine but AFAIK David uses VS2010, so there may be
dependencies on the VS2010 runtime from David's binaries, and
dependencies on the VS2008 runtime from Meinberg's binaries.
Martin
===================================
Martin, you raise a good point. Yes, mune are compiled with VS2010, and
I've never had to install extra runtime DLLs to get NTP working, but may
of my PCs run other software as well which /may/ have installed them. I
seem to recall that on several out-of-the-box Windows-8 installs, your
recent 4.2.6p5 "London" version installed without the need for any extra
DLLs, and my locally-compiled 4.2.7p development versions could be
written over the top of your install without issues (SSL dependency
excepted). Lots of others have used your install without issues, and
many have used my updates as well.
When I read your posting, I was concerned and did look at ntpd.exe and
ntpq.exe from my versions with Depends On, and I could only find a
reference to MSVCRT.dll, and that only through the referenced system
DLLs. Perhaps MSVCRT.dll gets updated with the different Visual Studio
updates.
On my XP system MSVCRT.dll is 343,040 bytes, modified 14-Apr-2008.
On a Windows-7/64 PC, the MSVCRT.dll is a 64-bit DLL (even though
ntpd.exe is a 32-bit program), 634,880 bytes, modified 16-Dec-2011.
I haven't looked at the details for quite some time now, but if I
remember correctly then basically all Windows versions should install
the runtime library versions of all compiler packages shipped until the
particular windows version was rolled out.
For example:
- Win NT, 2k, and XP should include the runtime libraries for VC6, but
not for VS2008.
- Vista and newer should include the runtime libraries for VC6 and VS2008.
- Win7 and server 2008 might include the runtime libraries for VC6 and
VS2008, and VS2010.
etc. Maybe the statements above are not quite excat in telling which VC
runtimes are shipped with which Windows versions, but the point is that
current Windows versions should provide the runtimes for current and old
compiler versions, while old Windows version can't provide runtime
versions of compilers which have been recently released after the
Windows version.
In case of 64 bit Windows OS versions you have to keep in mind that the
system32 directory contains 64 bit versions of DLLs, whereas the 32 bit
versions of DLLs can be found in the syswow64 directory.
Self-explaining, isn't it? ;-)
Since the NTP package is 32 bit only it also requires the 32 bit
runtime, even on a 64 bit system.
Yet we had only a single case where the VS2008 runtime explicitely had
to be installed on a Server 2008 64 bit Windows system. I'm not sure if
this was 2008 or 2008R2.
The remaining question is if the non-presence of the 32 bit VS2008
runtime on some Server 2008 x64 systems is a feature or a bug on a
particular installation source, or if it is excluded if some OS features
are deselected during installation. I havent installed Server 2008 for a
long time so I don't know out of my head if there's an option to
deselect something.
Of course, maybe the other MS VC runtime DLLs are dynamically
referenced. If this is a genuine concern, I would certainly like to
have it well-documented.
I agree, but this probably requires quite some investigation, or some
statement from MS about the presence of different runtime libraries on
default Windows installations.
Martin
--
Martin Burnicki
Meinberg Funkuhren
Bad Pyrmont
Germany
_______________________________________________
questions mailing list
[email protected]
http://lists.ntp.org/listinfo/questions