I have recently installed the Ubuntu app for Windows 10 so that I can use it for a class.
I am following some cryptic assignment directions to "try out tkinter".
I installed the package python3-tk in the Ubuntu terminal window following instructions located here: How to install and use Tkinter in ubuntu / Debian / Linux mint.
So then I execute
~$ python3
with the result
Python 3.5.2 (default, Aug 18 2017, 17:48:00)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
then the following commands:
>>> import tkinter
>>> tkinter.Tk()
With the resulting error:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.5/tkinter/__init__.py", line 1871, in __init__
self.tk = _tkinter.create(screenName, baseName, className, interactive,
wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable
The most used command to displays the environment variables is printenv . If the name of the variable is passed as an argument to the command, only the value of that variable is displayed. If no argument is specified, printenv prints a list of all environment variables, one variable per line.
Solved:
Note: This is when using the Ubuntu App inside Windows 10
Install Xming X server for Windows.
During installation there is an option to set the display to 0.
Add the line export DISPLAY=:0;
to .bashrc
as suggested.
I was having the same problem. I recently installed the 'Bash on Ubuntu on Windows' app from the store, and I was getting the following error when running my python script that tries to create a python UI:
_tkinter.TclError: no display name and no $DISPLAY environment variable
I followed @Zach instructions however my problem still remained. This is how I fixed my issue after following @Zach.
~
on the Ubuntu terminal, and opened my .bashrc file by executing vim .bashrc
.export DISPLAY=:0;
. Instead of 'execute', I used 'export'.Make sure to close all terminal instances before trying to execute the python script.
And that worked for me!
If you don't want to install Xming X Server For Windows
Then use CMD in windows and it will work fine.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With