Configuring Pycharm to run Pyinstaller

孤者浪人 提交于 2019-11-27 13:15:34

问题


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:

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?


回答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:

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




回答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:

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.




回答3:


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:

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:

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




回答4:


For those of us on Windows with Anaconda trying to figure this out, I found it easiest to just set up a Bash Configuration (I believe you need the BashSupport plugin for this), and set:

  • Script: pyinstaller (assuming pyinstaller is in your path, if not, the full path)
  • Interpreter path: C:\Windows\system32\cmd.exe (yes, a bash configuration can just use the standard command program)
  • Interpreter options: /C
  • Program arguments: script_name.py (along with any other pyinstaller arguments)
  • Working Directory: C:\Path\To\Script



回答5:


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




回答6:


output for pyinstaller on pycharm windows 8

argumento                                                        fails
---                                                                V
-y -F                                                              V
-y -F --onefile                                                    V
-y -F --onefile -c $FileName$                                      F (default path)
-y -F --onefile -w $FileName$                                      F (default path, no console neither cmd)
-y -F --onefile -c $FileName$ --distpath $FileDir$                 F (path as project)
-y -F --onefile -c $FileName$ --distpath $FileRelativePath$        V


best selection -> line four or six


来源:https://stackoverflow.com/questions/33906539/configuring-pycharm-to-run-pyinstaller

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!