Configuring Pycharm to run Pyinstaller

39,704

Solution 1

The PyInstaller package is a runnable module and can be run using python -m PyInstaller. To configure it as a run target in PyCharm, leave the "Script" field blank, write -m PyInstaller in the "Interpreter Options" field, and put the PyInstaller parameters into the "Script Parameters" field.

For example:

pyinstaller pycharm configuration

PyCharm will complain that the "Script" field is empty, but it will let you run the configuration anyway.

Solution 2

After more than two years, perhaps there is a better option.

In the PyCharm menu go to File -> Settings.
In the Settings dialog find Tools -> External tools and use the green + to add a new external tool.

For example:

enter image description here

Then, the IDE will allow you to run it on any python script. Right click on the file and the context menu will show External tools -> PyInstaller.

Solution 3

The run command has changed a bit since the accepted answer. You can now select a module to launch rather than editing the interpreter options.

As of writing this answer, here is how it looks like:

enter image description here

Notes:

  • This solution requires to install PyInstaller in the virtual environment of the project.
  • I am using PyCharm pro 2020.1
  • Old solution should still work
  • Using external tool is still a possibility. Which solution you choose is a matter of personal preference.

Solution 4

Install pyinstaller in pycharm, then open the pycharm terminal and write python -m PyInstaller.

Solution 5

So as Pycharm has newly updates, my case was a bit different as I installed pyinstaller from the interpreter settings as the following picture shows:

enter image description here

For Linux Users:

You could install it in both Python 2.7 or Python 3.7+. Make sure to get the path of where pyinstaller was stored.Then in the Settings option, try to find Tools -> External tools and add a new external tool as the following picture shows: enter image description here

For Windows users:

If you are using Pycharm or any virtual environment. Unfortunatelly Pycharm creates its local vertual environment in venvpath once you indicate the interpreter. So, you should set the external tool (pyinstaller) to the real path of your python 3.7 .exe as the picture shows here

Share:
39,704

Related videos on Youtube

gerosalesc
Author by

gerosalesc

Java/Python Full stack developer engineer looking for challenges

Updated on September 03, 2020

Comments

  • gerosalesc
    gerosalesc over 3 years

    Yes I want to create a run configuration in PyCharm to run Pyinstaller and get my executable. According to the Pyinstaller documentation you should be able to locate an python script called pyinstaller-folder/pyinstaller.py after the installation, but it wasn't there. Then I look carefully and found this other one named pyinstaller-folder/__main__.py which should be the same <--(me wild guessing), so I set up my running configuration like this:

    enter image description here

    After running it, is giving me this error:

    /usr/local/Cellar/python3/3.4.3/bin/python3.4 /usr/local/lib/python3.4/sit
    
    e-packages/PyInstaller/__main__.py --onefile --nowindow --osx-bundle-identifier=jg.optimizer -F --name=genoptimizer optimizer/manage.py
    Traceback (most recent call last):
      File "/usr/local/lib/python3.4/site-packages/PyInstaller/__main__.py", line 26, in <module>
        from . import __version__
    SystemError: Parent module '' not loaded, cannot perform relative import
    
    Process finished with exit code 1
    

    It seems to require a parent module to run but, how would that look like?

  • Stevoisiak
    Stevoisiak about 6 years
    How do you get to this window in PyCharm?
  • NaturalBornCamper
    NaturalBornCamper over 5 years
    Thanks so much friend!! So easy, so convenient! :) Any idea how to suppress all the warnings? They're kind of not reassuring..
  • nhubbard
    nhubbard over 5 years
    @StevenM.Vascellaro Click on the debug configurations button in the top right corner, and select "Edit Configurations..." from the menu. Then fill in the information in a new Python profile using the editor.
  • tazboy
    tazboy over 4 years
    Great job figuring this out!