ContinuumIO / anaconda-issues

Anaconda issue tracking
646 stars 220 forks source link

Windows10 64 Bit install of 5.2.0 is missing Start Menu item after installing Anaconda #9595

Open truedat101 opened 6 years ago

truedat101 commented 6 years ago

A related issue, #614 exists and has been commented on recently, but this issue is closed, and there don't seem to be clear solutions for people who want to use Anaconda3 5.2.0 on 64bit windows 10.

Actual Behavior

Run installer on windows 10 of 64bit installer 5.2.0

Expected Behavior

We should have start menu items for Anaconda Navigator, etc.

Steps to Reproduce

Get a windows 10 64 bit machine. Install 5.2.0 64 bit installer. Wait. Verify start menu.

Anaconda or Miniconda version:

Whatever comes with 5.2.0

Operating System:

windows 10

conda info

nothing works

conda list --show-channel-urls

N/a

truedat101 commented 6 years ago

@lk911 I've filed an issue on this, please follow, as we need to resolve the Anaconda3 install on your machine.

msarahan commented 6 years ago

We believe this is due to strange interactions between antivirus and our installer. It may also be due to permissions errors. We are unable to reliably reproduce.

If you can reliably reproduce with a VM that you can share with us, we can take a look. Otherwise, we have tried many things, and short of completely rewriting the installer with a different technology than NSIS, we are out of ideas.

truedat101 commented 6 years ago

Are you suggesting there is no installer log I can share with you that would indicate the source of the problem?

truedat101 commented 6 years ago

And regarding anti-virus, are you suggesting Windows Defender is the problem?

truedat101 commented 6 years ago

Sharing a windows VM is probably out of the question for me in terms of effort, however, maybe someone has a Windows VM int he cloud they can share with this problem exhibited.

truedat101 commented 6 years ago

I guess another question is, is there a command line version of the install possible (so I can capture log output), and share that?

msarahan commented 6 years ago

You can run the installer in silent mode from the command line. https://conda.io/docs/user-guide/install/index.html#installing-in-silent-mode

There is no log that I know of. NSIS is not nice that way. You should try to use procmon on the installer as it runs.

truedat101 commented 6 years ago

Does the installer require an existing Python installation? I've noticed on the machine in question, it is installed for one user, not all users, and I've seen this sort of problem pop up on other installers. There are a lot of variables here: existing 2.7 python, python 3 presence (or not), 32bit or 64 bit python, installed in user local or installed in ProgramFiles or wherever it likes to put it for all users, and then whether installs were done with Admin elevated permissions (required for all user installation).

truedat101 commented 6 years ago

I'll try the command line install, but it sounds like NSIS doesn't provide an install log. I've used it a bit directly, but it sounds like it is limited.

msarahan commented 6 years ago

Our installer does not require other python - it includes it. In the past, other python installations sometimes interfered. We tried to improve that in the 5.2 installer by forcing a much more constrained PATH for the installer process that installs shortcuts. Other pythons may still interfere.

truedat101 commented 6 years ago

So that might be the problem, I've got another Python installed, and you probably have to expect that most people will need python on their dev systems for other purposes. It appears there is a way to register the Anaconda python as the python to use, however, if this is required, it shouldn't be an option. But if Anaconda modifies the system's python, that can be a problem.

truedat101 commented 6 years ago

I'll retest another go around to see if one of these variants works with 5.2.0.

shrokmel commented 6 years ago

I find it hard to believe that having an existing Python version interferes with including Anaconda Navigator on the Start Up menu. Is there somewhere in the installation folder where these executables for ipython-notebook, jupyter-notebook, Anaconda Navigator etc. exist? If this is the case, it might be a simple matter of adding it to the Start Up menu.

msarahan commented 6 years ago

If you find it hard to believe, then uninstall your existing Python and try again.

You can force reinstallation of shortcuts from Anaconda Prompt:

conda install -f notebook anaconda-navigator

Note that if you installed for all users, you need to use an elevated prompt (right-click Anaconda Prompt and say "run as admin")

shrokmel commented 6 years ago

I've only installed Python and Anaconda for myself. After installing Anaconda, conda isn't even recognised in Anaconda Prompt. I tried to add folders to the $PATH, to no avail. @truedat101 do you also have this issue?

truedat101 commented 6 years ago

This is not the first piece of python software where I've found installers getting confused. Another python guy I work with handed me an installer, and I found it ran into a variety of problems that he'd never tested for because of differences in how he managed paths and dealing with the multi-python challenge. @msarahan where is conda in the path? Should I find it under the Anaconda3 install path?

Sorry for making a big deal out of this, but I'm teaching my Son python programming, and he is following some online training. Unfortunately for someone who doesn't do this as a profession (yet) he can't navigate small challenges like installation differences (he's expecting Anaconda Navigator in the start menu). I'll see if I can patch the installation with the conda command.

truedat101 commented 6 years ago

@shrokmel I am reinstalling but I am going to make Anaconda the system python, and also adding it to the path via the installer.

shrokmel commented 6 years ago

I will try and uninstall all existing Python and try again as suggested - but I can now confirm that I'm having the same issue with both Anaconda2 and Anaconda3. And, I second @truedat101 - @msarahan can you tell us where is conda in the path? (Thank you very much for your help and time, btw! I don't know if I came off snarky earlier :-S)

msarahan commented 6 years ago

It is best to not add any python installation to PATH - that is what is causing these conflicts. It also leads to DLL hell, depending on ordering of PATH. Some piece of software will always get the short end of the stick. If you use Anaconda prompt or the start menu shortcuts (once you get them to show up), we handle adding ourselves to PATH for you. It's much less likely to cause problems that way.

shrokmel commented 6 years ago

@msarahan I only added added directories to PATH, after I couldn't find Conda after Anaconda installation. I have removed these directories from $PATH before all my re-installations.

But I am yet to uninstall all Python before installing Anaconda. Will get back to you after I do that.

truedat101 commented 6 years ago

I'm 99% certain this picks up Python2, which is on the path and in the system. I've never heard this "don't put python in your path" tenant, but I guess that makes sense that it would be causing the problem.

truedat101 commented 6 years ago

I'm giving up on this thing. I've spent at least 4 hours since last week with the install/uninstall, and just don't see the value unfortunately, if I can run python3 or python2 from the command prompt. Not sure what Anaconda adds, which I'm sure is something good, but this is past my time spent threshold.

truedat101 commented 6 years ago

Two details: Most definitely the scripts pick up anything called python.exe in the path, whether it is the correct python or not, and this will botch a run of the activate.bat script. Secondly, I'm seeing that an existing python3 has an installation issue related to not being installed w/ Admin privileges, which will lead to some code error package not found issue. So problems, as pointed out by @msarahan are probably upstream from Anaconda. My only critique here: a good installer will identify environment issues and abort install. A simple BAT script might detect a wasp nest of python issues (multiple pythons found) or some other problematic things and abort with a nice error.

msarahan commented 6 years ago

Our installer scripts are public, and we accept PRs gladly.

https://github.com/conda/constructor

truedat101 commented 6 years ago

I'd love to have the extra time to figure this out, but I think I've provided quite a bit of detail on "typical" environments found in the wild, if I can summarize:

How Anaconda plays into these sets of scenarios I cannot say. I don't work on this project, but the goals look very good. I think the above includes a reasonable list of system configurations that have to be tested, and or at least documented as "don't do this". Real python users may know better, but a lot of python noobs come into programming through the auspices that it is a good learning language with great tools. And that's probably true, but I wouldn't recommend a beginner down this path if these issues aren't worked out.

msarahan commented 6 years ago

Thanks, that's a good list for us to set up with our QA team. We'll try to look into this for our next release (roughly September).

In the meantime, I definitely advise anyone who has any part of your list there to clean things up. Global things like PATH and PYTHONPATH will inevitably cause problems with multiple python installations, and probably with other software, too.

shrokmel commented 6 years ago

@msarahan @truedat101 - Thank you very much for all your help. I cleared the $PYTHONPATH, without uninstalling old Python versions etc. and did a fresh installation of Anaconda3, and now everything is working.

I would recommend adding this to the installation instructions.

seshuvenkatesh commented 6 years ago

Thank you all for this post. I was having this exact issue when I installed Anaconda (Anaconda3-5.2.0-Windows-x86_64.exe) on my Windows 10 machine. I had two other python versions with path set (under environment variables). Once I removed those, it worked. Cannot get back the 2 days I wasted trying to figure this out though :).

truedat101 commented 6 years ago

Unfortunate, but so many ML projects out there blindly recommend Anaconda without providing any details about installation gotchas that might be hit. Not being a real python person, I don't know these issues that might come up on Windows, and normally these things don't happen on Linux. And on Mac, it's an entirely different set of issues with various pythons one might encounter. Anyway, glad this helped. I think we collectively spent a week on this 😺

jaydevtrivedi commented 5 years ago

I am having the same problem. I thought that it might be antivirus related or other python related. Luckily i built a new computer and was trying to install anaconda. Hence, i uninstalled antivirus software and any other python installation. However, after atleast 10 attempts of adding/not adding path, setting user/all users. I still cannot find anaconda-navigator or anaconda-prompt in start menu. I don't see $PYTHONPATH and python is recognized as command not found on command prompt. conda.exe -V doesn't do anything. Can someone please help? Thanks.

BenjaminMichael commented 5 years ago

I have the same problem I am struggling to find an entry point for Anaconda Navigator so I can launch it via virtualization software

edit: in windows I mean.

jaydevtrivedi commented 5 years ago

Somehow, the problem has been fixed can't put a finger on it but i can see the anaconda navigator in the command prompt. Could be a windows update with something or the latest anaconda image update.

This time around i also had a previously installed python installation on the system which "maybe" i didnt have earlier when i was trying although i am not sure about it. However, anaconda is working fine now.