Python application doesn't find tkinter but it's installed

I used: pip install tk
my system is up to date
And I used import tkinter as tk

I meant the pacman command too.

Please give the output of:

Fehler: GPGME-Fehler: Keine Daten
Fehler: GPGME-Fehler: Keine Daten
Fehler: GPGME-Fehler: Keine Daten
Fehler: GPGME-Fehler: Keine Daten
:: Paketdatenbanken werden synchronisiert …
 core                 1597,9 KiB  4,51 MiB/s 00:00 [######################] 100%
 extra                   9,6 MiB  12,0 MiB/s 00:01 [######################] 100%
 community              34,8 MiB  12,2 MiB/s 00:03 [######################] 100%
 multilib              253,9 KiB  5,39 MiB/s 00:00 [######################] 100%
Fehler: GPGME-Fehler: Keine Daten
Fehler: GPGME-Fehler: Keine Daten
Fehler: GPGME-Fehler: Keine Daten
Fehler: GPGME-Fehler: Keine Daten
Fehler: Keine Datenbank konnte synchronisiert werden (Ungültige oder beschädigte Datenbank (PGP-Signatur))

Sorry my system is in German. Fehler means Error


Moderator edit: In the future, please use proper formatting: [HowTo] Post command output and file content as formatted text

1 Like

I ran the Skript but nothing changed. It’s still the same error.

Stop mixing local and system Python packages.

Please see:

1 Like

I’ll do! Thank You!

Now this is the output of sudo pacman -Fy /usr/lib/python3.10/tkinter/init.py:


core                 1597,9 KiB  1216 KiB/s 00:01 [######################] 100%
 extra                   9,6 MiB   644 KiB/s 00:15 [######################] 100%
 community              34,8 MiB   865 KiB/s 00:41 [######################] 100%
 multilib              253,9 KiB   897 KiB/s 00:00 [######################] 100%
usr/lib/python3.10/tkinter/__init__.py ist in core/python 3.10.9-1 enthalten

But it still dont works.

Now it’s your turn. Please edit your post accordingly. :wink:

Sorry. I’m very new but know it shpuld be fine.

tk 0.1.0 Jul 8, 2019
TensorKit is a deep learning helper between Python and C++.

tkinter is a core python module, you don’t have to install it.

That should be satisfied by the package extra/tk.

2 Likes

Well, it’s an easy way to directly load tkinter. If it works and import tkinter as tk does not, you may have something already defined as tk. That’s what seems to happen, the op has tensorkit package as tk.

You are installing tk package, tk is tensorkit, not tkinter. Then you try to load tkinter also as tk, may be there’s a name conflict between both.

Uninstall tk package if you don’t need it and the problem importing tkinter may be solved.

I see you don’t like to read tracebacks. :grin:

They installed tensorkit, which makes it available to import, presumably like so: import tk or import tk as tensorkit.

However they imported tkinter, which in turn imported _tkinter which complained that libtk8.6.so is missing.

libtk8.6.so is owned by the tk package in the repos (not to be confused with tensorkit), so either OP has an old version, it’s not installed, or something weird is going on.

1 Like

I deinstalled tk and changed my code to your suggestion, but there is still the same error. If i run:
$ pip3 show tkinter
then there is the output:
WARNING: Package(s) not found: tkinter

Looking at it calmly, @dmt is right, the libtk8.6.so library that comes with the tk package is missing. You can check if it is in your system with this command:

ls /usr/lib/libtk8.6.so

That library comes with the manjaro tk package. You can install it with:

pacman -S tk

1 Like

The tk package is missing. But if I try:

pacman -S tk

there is an error:

resolving dependencies...
looking for conflicting packages...

Packages (1) tk-8.6.13-1

Total Download Size:   1.90 MiB
Total Installed Size:  4.84 MiB

:: Proceed with installation? [Y/n] y
:: Retrieving packages...
 tk-8.6.13-1-x86_64   1942.1 KiB   870 KiB/s 00:02 [######################] 100%
(1/1) checking keys in keyring                     [######################] 100%
(1/1) checking package integrity                   [######################] 100%
error: tk: signature from "Antonio Rojas <arojas@archlinux.org>" is unknown trust
:: File /var/cache/pacman/pkg/tk-8.6.13-1-x86_64.pkg.tar.zst is corrupted (invalid or corrupted package (PGP signature)).
Do you want to delete it? [Y/n] y
error: failed to commit transaction (invalid or corrupted package (PGP signature))
Errors occurred, no packages were upgraded.

Bad signature, refresh keyring with:

sudo pacman -Sy archlinux-keyring manjaro-keyring

If you have more trouble with Keys:

1 Like

Thank you!

Now the output is:

warning: tk-8.6.13-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...

Packages (1) tk-8.6.13-1

Total Installed Size:  4.84 MiB
Net Upgrade Size:      0.00 MiB

:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring                     [######################] 100%
(1/1) checking package integrity                   [######################] 100%
(1/1) loading package files                        [######################] 100%
(1/1) checking for file conflicts                  [######################] 100%
(1/1) checking available disk space                [######################] 100%
:: Processing package changes...
(1/1) reinstalling tk                              [######################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...

but die error still exists. If I try to run the programm in vscode der is still:

bin/python /home/(my username)/Dokumente/Programmieren/Python/SpielTkinter.py
Traceback (most recent call last):
  File "/home/(my username)/Dokumente/Programmieren/Python/SpielTkinter.py", line 1, in <module>
    from tkinter import *
ModuleNotFoundError: No module named 'tkinter'

Does it work in a terminal?

vscode will need to be configured, not sure I can help with that as I don’t use it.

It seems to be using a different python interpreter, one that doesn’t come with tkinter.

https://stackoverflow.com/questions/56658553/module-not-found-error-in-vs-code-despite-the-fact-that-i-installed-it

https://stackoverflow.com/questions/69603788/how-to-pip-install-tkinter - spoiler: you can’t


TL;DR Change the python interpreter that vscode uses.

preferably don’t use VSCode. Use IDLE or Spyder or PyCharm.or KDE Develop or something else.

Where are you using pip install … ? It is preferable that you use pip install … in a Python virtual Environment. But if you have set up the pyvenv then tkinter will be included in the venv.

https://www.pragmaticlinux.com/2021/12/create-a-python-virtual-environment-in-the-linux-terminal/