Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The program can't start because VCRUNTIME140_1.dll is missing from your computer #14897

Open
2 of 10 tasks
tukotech opened this issue Mar 9, 2021 · 16 comments
Open
2 of 10 tasks

Comments

@tukotech
Copy link

tukotech commented Mar 9, 2021

Issue Report Checklist

  • Searched the issues page for similar reports
  • Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
  • Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
  • Could not reproduce inside jupyter qtconsole (if console-related)
  • Tried basic troubleshooting (if a bug/error)
    • Restarted Spyder
    • Reset preferences with spyder --reset
    • Reinstalled the latest version of Anaconda
    • Tried the other applicable steps from the Troubleshooting Guide
  • Completed the Problem Description, Steps to Reproduce and Version sections below

Reporters note: most of the check boxes above does not apply to using the Spyder_64bit_full

"The program can't start because VCRUNTIME140_1.dll is missing from your computer" when running Spyder

What steps reproduce the problem?

  1. Create a fresh Windows 2016 VM
  2. Download and install latest Spyder_64bit_full. I was using whatever was the latest on 3/9/2021.
  3. Run Spyder

What is the expected output? What do you see instead?

This is what I am seeing when I tried to run Spyder

---------------------------
QtWebEngineProcess.exe - System Error
---------------------------
The program can't start because VCRUNTIME140_1.dll is missing from your computer. Try reinstalling the program to fix this problem. 
---------------------------
OK   
---------------------------

Paste Traceback/Error Below (if applicable)

PASTE TRACEBACK HERE

Versions

  • Spyder version: 4.2.3
  • Python version:
  • Qt version:
  • PyQt version:
  • Operating System name/version:

Dependencies

PASTE DEPENDENCIES HERE

Workaround

Install VC++ Redist

@ccordoba12
Copy link
Member

Hey @tukotech, thanks for reporting. Did the workaround you posted make the error go away for you?

@tukotech
Copy link
Author

@ccordoba12 - Yes.

@ccordoba12
Copy link
Member

Ok, thanks for letting us know about it!

@CAM-Gerlach, what do you think about adding a mention to this in our docs?

@CAM-Gerlach
Copy link
Member

This appears to be a dupe of #14433 , which may be ultimately due to takluyver/pynsist#176 . How often have you seen it reported? At least per some searching, its only been reported by three users in two issues, they're fairly recent, and seems to be related to either old Windows 10 versions or user/environment-specific issues with the MSVC C++redist (users uninstalling it, DLLs getting corrupted/removed/overwritten, etc). Therefore, while it seems too niche to mention in our top-level FAQ (unless users start reporting it more frequently), it could be worth a concise mention under a new section ("Application crashes" -> "VCRUNTIME140_1.dll error on Windows") on the common illnesses page. What do you think @ccordoba12 ?

Reporters note: most of the check boxes above does not apply to using the Spyder_64bit_full

@tukotech Thanks, good points. Per #8269 we've been meaning to update that for a long time and add a few different template types for bugs, crashes, features etc, but never got around to it. I'll put it back on my list.

@ccordoba12
Copy link
Member

What do you think @ccordoba12 ?

Agreed. Please do that.

@tukotech
Copy link
Author

tukotech commented Mar 17, 2021

and seems to be related to either old Windows 10 versions or user/environment-specific issues with the MSVC C++redist (users uninstalling it, DLLs getting corrupted/removed/overwritten, etc)

Just would like to add that this happens on Windows 2019 (clean VM) and Windows 2016 (version 1607). So the VM have naver seen VC++ redist at all. It is very tempting to say that VC++ "Visual Studio 2015, 2017 and 2019" should be a pre-requisite like check during installation or include/install the redistributable as part of the installation.

@CAM-Gerlach
Copy link
Member

Okay, thanks; that would actually make sense given takluyver/pynsist#176 ; our installation framework doesn't bundle it, but I imagine the problem isn't more widespread because the great majority of users do have the DLL installed already for other programs. @dalthviz is there any way to fix this on our end, or is it practicable to arrange an upstream fix?

@dalthviz
Copy link
Member

@CAM-Gerlach I guess we could add it as one of our assets but I'm unsure if that possible in terms of licenses

@CAM-Gerlach
Copy link
Member

@dalthviz Its not OSS, but its freely redistributable, same as the other MS DLLs that pynsis already bundles and installs, so legally speaking, it doesn't make a difference to the end result whether pynsis . Ideally, it would be submitted upstream to live with its brethren in the pynisis repo, but so long as it isn't checked into the main Spyder source repo (which would make it nonfree) and just bundled as part of the installer build process, there's no meaningful difference whether it was bundled with the default pynsis assets or a custom one, as far as I'm aware.

@dalthviz
Copy link
Member

Then I guess we could add it to the assets repo https://github.com/spyder-ide/windows-installer-assets and change the script to copy the new DLL. I guess the only missing thing is to get the DLL from somewhere

@CAM-Gerlach
Copy link
Member

@dalthviz The latest version of the official DLL can be downloaded from here as part of the MS C++ redist package

@CAM-Gerlach
Copy link
Member

Here are the latest copies that are bundled with Miniconda

runtimedlls.zip

@CAM-Gerlach
Copy link
Member

These are version 14.28.29325.2; for reference, the latest download from MS is version 14.28.29913.0, and the version currently installed in System32 on my Win 8.1 Pro x64 system with the latest patches applied is 14.24.28127.4.

@CAM-Gerlach
Copy link
Member

They should, however, be fully backward compatible with any 2015+ version of the UCRT

@henryiii
Copy link

FYI, this error comes from MSVC 2019 adding a new dependency - you can usually disable it when building, though: https://cibuildwheel.readthedocs.io/en/stable/faq/#importerror-dll-load-failed-the-specific-module-could-not-be-found-error-on-windows

I'm pretty sure Python > 3.x.y started including this file, I'm just not sure exactly what versions now include it.

@dalthviz
Copy link
Member

Thanks for the info @henryiii ! Will check 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants