Nuitka: Standalone build fails to warning about not using tk-inter plugin

Environment

C:\Users\LUNA\Desktop\Local Projects\iracing-pace (master -> origin)
λ poetry run python -m nuitka --version
0.6.6rc3
Python: 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)]
Executable: C:\Users\LUNA\Desktop\Local Projects\iracing-pace\.venv\Scripts\python.exe
OS: Windows
Arch: x86_64

Nuitka command

poetry run python -m nuitka --standalone --plugin-enable=numpy=matplotlib iracing_pace\main.py

Build is successful, but crashes in runtime

Runtime Error

C:\Users\LUNA\Desktop\Local Projects\iracing-pace\working\main.dist (master -> origin)
λ main.exe 28090626
Traceback (most recent call last):
  File "C:\Users\LUNA\Desktop\Local Projects\iracing-pace\working\main.dist\main.py", line 102, in <module>
  File "C:\Users\LUNA\Desktop\Local Projects\iracing-pace\working\main.dist\main.py", line 60, in main
  File "C:\Users\LUNA\Desktop\Local Projects\iracing-pace\working\main.dist\seaborn\categorical.py", line 2979, in swarmplot

  File "C:\Users\LUNA\Desktop\Local Projects\iracing-pace\working\main.dist\matplotlib\pyplot.py", line 926, in gca
  File "C:\Users\LUNA\Desktop\Local Projects\iracing-pace\working\main.dist\matplotlib\pyplot.py", line 603, in gcf
  File "C:\Users\LUNA\Desktop\Local Projects\iracing-pace\working\main.dist\matplotlib\pyplot.py", line 539, in figure
  File "C:\Users\LUNA\Desktop\Local Projects\iracing-pace\working\main.dist\matplotlib\backend_bases.py", line 3252, in new_figure_manager
  File "C:\Users\LUNA\Desktop\Local Projects\iracing-pace\working\main.dist\matplotlib\backends\_backend_tk.py", line 950, in new_figure_manager_given_figure
  File "C:\Users\LUNA\Desktop\Local Projects\iracing-pace\working\main.dist\tkinter\__init__.py", line 2023, in __init__
_tkinter.TclError: Can't find a usable init.tcl in the following directories:
    {C:/Users/LUNA/Desktop/Local Projects/iracing-pace/working/lib/tcl8.6} {C:/Users/LUNA/Desktop/Local Projects/iracing-pace/working/lib/tcl8.6} {C:/Users/LUNA/Desktop/Local Projects/iracing-pace/lib/tcl8.6} {C:/Users/LUNA/Desktop/Local Projects/iracing-pace/working/library} {C:/Users/LUNA/Desktop/Local Projects/iracing-pace/library} {C:/Users/LUNA/Desktop/Local Projects/iracing-pace/tcl8.6.9/library} {C:/Users/LUNA/Desktop/Local Projects/tcl8.6.9/library}



This probably means that Tcl wasn't installed properly.

If I copy tcl and tk folders from python install directory into “lib” folder in PARENT directory, it works.

└──  working_build
   ├──  main.dist
   └──  lib
       ├──  tcl8.6
       └──  tk8.6

It also works if I don’t use standalone mode.

Note: tcl86t.dll and tk86t.dll are present in main.dist

Any ideas to what could be causing this?

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 31 (28 by maintainers)

Most upvoted comments

why don’t you use the tk-inter plugin?