[Osgeo4w-trac] [osgeo4w] #886: crssync, pdal_wrench and untwine fail to exeute (MSVCP140.dll error)
OSGeo4W
trac_osgeo4w at osgeo.org
Tue Jun 24 01:19:12 PDT 2025
#886: crssync, pdal_wrench and untwine fail to exeute (MSVCP140.dll error)
------------------------+----------------------------
Reporter: andreaerdna | Owner: osgeo4w-dev@…
Type: defect | Status: new
Priority: normal | Component: Package
Version: | Resolution:
Keywords: |
------------------------+----------------------------
Comment (by jef):
I'd say the opposite - it's because of relying on the compatibility
guarantees. Microsoft changed the ABI at some point (probably
unintentional) , so that a if the constexpr mutex constructor is used (ie.
w/o _DISABLE_CONSTEXPR_MUTEX_CONSTRUCTOR) stuff built against a newer
runtime will not work on older runtimes. OSGeo4W ships a newer runtime
that would work, but the older one in andreaerdna's system32 (but probably
also on many other old machines) masks it (system32 is prioritized over
anything in PATH). Building with _DISABLE_CONSTEXPR_MUTEX_CONSTRUCTOR
produces code that runs with the older and the newer versions of the
runtime.
Alternative solutions could be update system32 (admin access required) or
copy the runtime DLLs everywhere other EXEs live (because . take priority
over system32 and PATH) - or changing every .EXE so that it uses
AddDllDirectory (like QGIS and python) to take system32 it's priority.
--
Ticket URL: <https://trac.osgeo.org/osgeo4w/ticket/886#comment:2>
OSGeo4W <http://trac.osgeo.org/osgeo4w>
OSGeo4W is the Windows installer and package environment for the OSGeo stack.
More information about the Osgeo4w-trac
mailing list