VMD-L Mailing List
From: Mortimer Hemmit (mortimer.hemmit_at_gmail.com)
Date: Tue Feb 14 2023 - 16:12:48 CST
- Next message: Chris Taylor: "Re: VMD 64-bit Windows OSPRay Initialization Error Possible Fix"
- Previous message: Bennion, Brian: "Re: ChatGPT knows basic VMD scripting..."
- Next in thread: Chris Taylor: "Re: VMD 64-bit Windows OSPRay Initialization Error Possible Fix"
- Reply: Chris Taylor: "Re: VMD 64-bit Windows OSPRay Initialization Error Possible Fix"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Hi,
Recently VMD 1.9.4a53 for 64-bit Windows has been crashing on startup
with an OSPRay error for me. There seem to be lots of threads about
this already (e.g.
<https://www.ks.uiuc.edu/Research/vmd/mailing_list/vmd-l/34017.html>,
<https://www.ks.uiuc.edu/Research/vmd/mailing_list/vmd-l/33943.html>,
<https://www.ks.uiuc.edu/Research/vmd/mailing_list/vmd-l/32557.html>)
so I won't repeat the error here.
I think I've found the cause of the error (or at least one part of it).
Quick summary: The embree3.dll library that ships with VMD 1.9.4a53
depends on the VC++12 redistributable. This is old and some newer
machines (like mine) might not have it installed.
Two possible solutions:
1) Recompile embree3.dll to depend on the more modern VC++14
redistributable (I tested this by copying it over the dll from more
recent embree releases, and they let VMD start out of the box)
2) Include the VC++12 DLLs with VMD or convince end users to install
it themselves
More details:
One can check the dependencies with "dumpbin /dependents embree3.dll"
in developer command prompt:
Dump of file embree3.dll
File Type: DLL
Image has the following dependencies:
tbb.dll
MSVCP120.dll
MSVCR120.dll
KERNEL32.dll
ADVAPI32.dll
and when I went to my library directories, I actually did not have
MSVCR120.dll installed. Installing it from Microsoft docs did the
trick and VMD started up normally.
Is embree3.dll the ONLY file that poses a problem? It seems so. I
replaced VMD's embree3.dll with various releases of embree (namely
3.2.2, 3.2.3, 3.2.4, 3.3.0, 3.5.0) and only the ones compiled with
VC++14 let VMD start properly, which imply that nothing else in the
VMD startup chain requires MSVCR120.dll and friends.
One could probably dig further to look for other odd library
dependencies and prove that what's here is the real problem, or test
whether OSPRay actually works once VMD starts, but hopefully this
provides a good starting point.
Mortimer
- Next message: Chris Taylor: "Re: VMD 64-bit Windows OSPRay Initialization Error Possible Fix"
- Previous message: Bennion, Brian: "Re: ChatGPT knows basic VMD scripting..."
- Next in thread: Chris Taylor: "Re: VMD 64-bit Windows OSPRay Initialization Error Possible Fix"
- Reply: Chris Taylor: "Re: VMD 64-bit Windows OSPRay Initialization Error Possible Fix"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]