This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: _tkinter.c won't build w/o threads?
Type: Stage:
Components: Tkinter Versions: Python 2.3
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: corvus, jlt63, loewis, nnorwitz
Priority: normal Keywords:

Created on 2003-03-16 20:57 by corvus, last changed 2022-04-10 16:07 by admin. This issue is now closed.

Messages (10)
msg15139 - (view) Author: John Speno (corvus) Date: 2003-03-16 20:57
I'm out of my area of expertice here trying to build python on Windows using cygwin and trying to use Tcl/Tk 8.4.2, but...

Anyway, it looks like I can't compile _tkinter.c unless I've configured python to use threads and I didn't because the main python README says not to with cygwin.

For example, tcl_lock is used in many places in _tkinter.c but it is only defined when WITH_THREAD is defined.

And there's no Sleep() function when WITH_THREADS is off, and that's used in WaitForMainLoop().

And in Tkapp_New() there's a call to PyThread_free_lock() that isn't inside an #ifdef WITH_THREAD block.
msg15140 - (view) Author: Neal Norwitz (nnorwitz) * (Python committer) Date: 2003-03-19 00:44
Logged In: YES 
user_id=33168

Jason, can you help with this?
msg15141 - (view) Author: Jason Tishler (jlt63) * (Python triager) Date: 2003-03-19 03:09
Logged In: YES 
user_id=86216

nnorwitz> Jason, can you help with this?

Yes. The short answer is I have been meaning to
update the official Python README. I guess that
I can't procrastinate anymore...

corvus> I'm out of my area of expertice here trying
corvus> to build python on Windows using cygwin
corvus> and trying to use Tcl/Tk 8.4.2, but... 

Do you really need to build CVS? Or, will the pre-built
Cygwin Python 2.2.2 suffice?

corvus> Anyway, it looks like I can't compile _tkinter.c
corvus> unless I've configured python to use threads
corvus> and I didn't because the main python README
corvus> says not to with cygwin.

Well, that's simple the "main python README" is wrong.
See above. :,)

If _tkinter requires threads under other Unixes, then I
think that updating the official Python README is
sufficient. Do others agree?
msg15142 - (view) Author: John Speno (corvus) Date: 2003-03-19 03:29
Logged In: YES 
user_id=2138

jlt63> Do you really need to build CVS? Or, will the pre-built
jlt63> Cygwin Python 2.2.2 suffice?

At the time, I needed 2.3a2. However, I was able to use a pre-built version for Windows and replace the included Tcl/Tk with 8.4.2. So, I'm good for now.

Is it really the case that you need to build Python with threads in order to build Tkinter? Why bother with all those #ifdef WITH_THREAD in _tkinter.c if building w/o threads isn't an option? Once I added them in, everything compiled and using Tkinter didn't give me any errors. It didn't give me any widgets on screen either, but I don't think that was related. :-)

Take care.
msg15143 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2003-03-21 18:16
Logged In: YES 
user_id=21627

Building _tkinter without threads should be supported.

Would anybody want to write a patch to add the missing
WITH_THREAD tests?
msg15144 - (view) Author: Jason Tishler (jlt63) * (Python triager) Date: 2003-03-26 21:30
Logged In: YES 
user_id=86216

loewis> Building _tkinter without threads should be supported.

Does the above imply that this is a generic Unix as oppose to
Cygwin specific problem?
msg15145 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2003-03-26 22:59
Logged In: YES 
user_id=21627

This is my suspicion. I haven't tried building Python on a
Unix system without threads, but I suspect it fails as well.
msg15146 - (view) Author: John Speno (corvus) Date: 2003-03-27 02:06
Logged In: YES 
user_id=2138

It fails on MacOS X when made w/o threads. That's unix enough.
msg15147 - (view) Author: Jason Tishler (jlt63) * (Python triager) Date: 2003-03-28 17:52
Logged In: YES 
user_id=86216

Given that this is most likely a generic Unix issue, I prefer
that someone better qualified to resolve this problem be
assigned.
msg15148 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2003-03-30 09:00
Logged In: YES 
user_id=21627

This is now fixed in _tkinter.c 1.153.
History
Date User Action Args
2022-04-10 16:07:40adminsetgithub: 38167
2003-03-16 20:57:12corvuscreate