1
votes

I am running Windows 7 and Python 3.7 (32bit). I am trying to use the command prompt to install pyinstaller but have run into problems that I can figure out.

I had it working briefly until I decided to update pyinstaller and it failed. After that, all hell broke loose. I have spent nearly a full workday as an intern trying to figure out what went wrong and feel I am at my wits-end. I know this is a frequently asked question through my hours of scrubbing for solutions but I am really struggeling. The most frustrating part is I can run pip, but I cannot run pyinstaller even after it appears to be installed correctly.

  1. I have added the following path to the system path by going through "Environment Variables":

C:\Users\awilliamson\AppData\Local\Programs\Python\Python37-32\Scripts

I made sure to edit "Path" and add a semicolon after the previous path. This is my resulting System Path:

C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\UCRT\;C:\Program Files\Intel\UCRT\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engie Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Users\awilliamson\AppData\Local\Programs\Python\Python37-32\Scripts

  1. After adding to "Path", I opened up the command prompt and typed the following and ran:

    pip install pyinstaller

This is the Output:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\awilliamson>pip install pyinstaller
Requirement already satisfied: pyinstaller in c:\users\awilliamson\appdata\local
\programs\python\python37-32\lib\site-packages (3.4)
Requirement already satisfied: pywin32-ctypes in c:\users\awilliamson\appdata\lo
cal\programs\python\python37-32\lib\site-packages (from pyinstaller) (0.2.0)
Requirement already satisfied: setuptools in c:\users\awilliamson\appdata\local\
programs\python\python37-32\lib\site-packages (from pyinstaller) (40.8.0)
Requirement already satisfied: pefile>=2017.8.1 in c:\users\awilliamson\appdata\
local\programs\python\python37-32\lib\site-packages (from pyinstaller) (2019.4.1
8)
Requirement already satisfied: macholib>=1.8 in c:\users\awilliamson\appdata\loc
al\programs\python\python37-32\lib\site-packages (from pyinstaller) (1.11)
Requirement already satisfied: altgraph in c:\users\awilliamson\appdata\local\pr
ograms\python\python37-32\lib\site-packages (from pyinstaller) (0.16.1)
Requirement already satisfied: future in c:\users\awilliamson\appdata\local\prog
rams\python\python37-32\lib\site-packages (from pefile>=2017.8.1->pyinstaller) (
0.17.1)

C:\Users\awilliamson>
  1. It appears to already be working- so I ran:

    pip

This outputs:

C:\Users\awilliamson>pip

Usage:
  pip <command> [options]

Commands:
  install                     Install packages.
  download                    Download packages.
  uninstall                   Uninstall packages.
  freeze                      Output installed packages in requirements format.
  list                        List installed packages.
  show                        Show information about installed packages.
  check                       Verify installed packages have compatible dependen
cies.
  config                      Manage local and global configuration.
  search                      Search PyPI for packages.
  wheel                       Build wheels from your requirements.
  hash                        Compute hashes of package archives.
  completion                  A helper command used for command completion.
  help                        Show help for commands.

General Options:
  -h, --help                  Show help.
  --isolated                  Run pip in an isolated mode, ignoring
                              environment variables and user configuration.
  -v, --verbose               Give more output. Option is additive, and can be
                              used up to 3 times.
  -V, --version               Show version and exit.
  -q, --quiet                 Give less output. Option is additive, and can be
                              used up to 3 times (corresponding to WARNING,
                              ERROR, and CRITICAL logging levels).
  --log <path>                Path to a verbose appending log.
  --proxy <proxy>             Specify a proxy in the form
                              [user:passwd@]proxy.server:port.
  --retries <retries>         Maximum number of retries each connection should
                              attempt (default 5 times).
  --timeout <sec>             Set the socket timeout (default 15 seconds).
  --exists-action <action>    Default action when a path already exists:
                              (s)witch, (i)gnore, (w)ipe, (b)ackup, (a)bort.
  --trusted-host <hostname>   Mark this host as trusted, even though it does
                              not have valid or any HTTPS.
  --cert <path>               Path to alternate CA bundle.
  --client-cert <path>        Path to SSL client certificate, a single file
                              containing the private key and the certificate
                              in PEM format.
  --cache-dir <dir>           Store the cache data in <dir>.
  --no-cache-dir              Disable the cache.
  --disable-pip-version-check
                              Don't periodically check PyPI to determine
                              whether a new version of pip is available for
                              download. Implied with --no-index.
  --no-color                  Suppress colored output

C:\Users\awilliamson>
  1. Still looks good. So then I test pyinstaller by running the following:

    pyinstaller

This is the output:

C:\Users\awilliamson>pyinstaller 'pyinstaller' is not recognized as an internal or external command, operable program or batch file.

C:\Users\awilliamson>

These are both paths I have in "Environment Variables"

User:

C:\Users\awilliamson\AppData\Local\Programs\Python\Python37-32\;C:\Users\awilliamson\AppData\Local\Programs\Python\Python37-32\Scripts;%PyCharm Community Edition%

System:

C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Intel\UCRT\;C:\Program Files\Intel\UCRT\;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engie Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Users\awilliamson\AppData\Local\Programs\Python\Python37-32\Scripts

Things I have tried to remedy the issue:

  1. Uninstall/Reinstall Python and pyCharm
  2. Restart Computer
  3. Update Computer
  4. Looked into System recovery but the recovery points I believe are too recent
  5. Use Regedit to recover old path extensions.
1
It seems that you env is a little corrupted but a simple solution is to just run pyinstaller throw python itself with python -m PyInstaller. Also, try to search your Scripts folder for pyinstaller.exe and check if there is any. - Masoud Rahimi
M.R., Thank you for your help! It turns out i did have pyinstaller installed; however, it was not appearing in the Scripts folder. I don't know what happened but was able to correct the issue by using: pip install github.com/pyinstaller/pyinstaller/archive/develop.tar.gz. It uninstalled pyinstaller 3.3 and installed 3.4. Pyinstaller then appeared in Scripts and worked. Thanks again! - awkid

1 Answers

0
votes

I finally figured it out, thanks to M. R.

I did have pyinstaller installed; however, it was not appearing in Scripts. So, if you are running Python 2 use:

pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz

For Python 3:

pip3 install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz

Information on this can be found at:

https://www.pyinstaller.org/downloads.html

After running the proper code above, pyinstaller uninstalled the old version and installed the new version, then appeared in Scripts and is working again.