473,666 Members | 1,977 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

[Windows] Pygtk2 incompatible with Stackless

Last weekend I tried to install Pygtk2 on Windows. I succeeded
(maybe), but I discovered a likely bug.
I have Windows 2000, Python 2.3.3 (with ActivePython installed after
the normal version) and a recent Stackless 3.0 python23.dll.
I think I've chosen correct and matching versions of GTK2 (Dropline
distribution 2.2.4-2) and Pygtk2 (pygtk 2.2.0-1.win32-py2.3.exe).
I installed both in the default locations (pygtk in site-packages,
GTK2 in c:\programmi\fi le comuni\gtk).
Then I added c:\programmi\fi le comuni\gtk\lib to the PATH to load GTK2
libraries, I added %PATH% to the PYTHONPATH environment variable
(previously empty) to load the GTK libraries from Python too, and with
advice from Microsoft Dependency Walker I rearranged PATH because a
mismatched iconv.dll from ActiveTcl was loaded instead of the GTK2
one.
I had an unrelated installation problem: the pygtk initialization code
looks for directory names like "gtk-2.0" and there is one such
directory in the GTK installation. This directory is assumed to be the
pygtk installation subdirectory for GTK 2.0. Instead of hacking pygtk
I copied the files there.

After all this entertainment I could import the whole family of
modules and call pygtk.require(" 2.0") without errors, but I had a
surprise:

C:\>python
Python 2.3.3 Stackless 3.0 040324 (#51, Mar 24 2004, 18:07:02) [MSC
v.1200 32 bit (Intel)] on win32
Type "help", "copyright" , "credits" or "license" for more information.
import gtk
gtk.Window() Traceback (most recent call last):
File "<stdin>", line 1, in ?
RuntimeError: more keyword list entries than argument specifiers
This cryptic message comes from getargs.c and appears to be an
incorrect specification of some function in Pygtk, but it isn't.
Reverting to the normal python23.dll the result appears correct:

C:\>python
Python 2.3.3 (#51, Dec 18 2003, 20:22:39) [MSC v.1200 32 bit (Intel)]
on win32
Type "help", "copyright" , "credits" or "license" for more information. import gtk
gtk.Window()
(:540): Gtk-WARNING **: Impossibile trovare il gestore dei temi in
module_path: "wimp",
<gtk.Window object (GtkWindow) at 0x7ef030>


The only configuration difference between the two transcripts is a
replaced c:\winnt\system 32\python23.dll .

Like most users, I have little need to use Stackless Python and Pygtk
at the same time, but this issue can be worth investigating for the
Stackless and/or Pygtk2 developers.

Lorenzo Gatti
Jul 18 '05 #1
1 2270
Lorenzo Gatti wrote:
Last weekend I tried to install Pygtk2 on Windows. I succeeded
(maybe), but I discovered a likely bug.
I have Windows 2000, Python 2.3.3 (with ActivePython installed after
the normal version) and a recent Stackless 3.0 python23.dll.
I think I've chosen correct and matching versions of GTK2 (Dropline
distribution 2.2.4-2) and Pygtk2 (pygtk 2.2.0-1.win32-py2.3.exe).
I installed both in the default locations (pygtk in site-packages,
GTK2 in c:\programmi\fi le comuni\gtk).
Then I added c:\programmi\fi le comuni\gtk\lib to the PATH to load GTK2
libraries, I added %PATH% to the PYTHONPATH environment variable
(previously empty) to load the GTK libraries from Python too, and with
advice from Microsoft Dependency Walker I rearranged PATH because a
mismatched iconv.dll from ActiveTcl was loaded instead of the GTK2
one.
I had an unrelated installation problem: the pygtk initialization code
looks for directory names like "gtk-2.0" and there is one such
directory in the GTK installation. This directory is assumed to be the
pygtk installation subdirectory for GTK 2.0. Instead of hacking pygtk
I copied the files there.

After all this entertainment I could import the whole family of
modules and call pygtk.require(" 2.0") without errors, but I had a
surprise:

C:\>python
Python 2.3.3 Stackless 3.0 040324 (#51, Mar 24 2004, 18:07:02) [MSC
v.1200 32 bit (Intel)] on win32
Type "help", "copyright" , "credits" or "license" for more information.
import gtk
gtk.Window( )
Traceback (most recent call last):
File "<stdin>", line 1, in ?
RuntimeError: more keyword list entries than argument specifiers
This cryptic message comes from getargs.c and appears to be an
incorrect specification of some function in Pygtk, but it isn't.
Reverting to the normal python23.dll the result appears correct:

C:\>python
Python 2.3.3 (#51, Dec 18 2003, 20:22:39) [MSC v.1200 32 bit (Intel)]
on win32
Type "help", "copyright" , "credits" or "license" for more information.
import gtk
gtk.Window( )

(:540): Gtk-WARNING **: Impossibile trovare il gestore dei temi in
module_path: "wimp",
<gtk.Window object (GtkWindow) at 0x7ef030>
The only configuration difference between the two transcripts is a
replaced c:\winnt\system 32\python23.dll .

Like most users, I have little need to use Stackless Python and Pygtk
at the same time, but this issue can be worth investigating for the
Stackless and/or Pygtk2 developers.


Thanks for pointing us to that problem. It is of course relevant
since Stackless tries to be a complete replacement for Python.
In a slightly too rigorous implementation of thread pickling,
I renamed some builtin types slightly, which caused other
problems, already. These changes will be gradually undone.
I very much hope that the Pygk2 problem belongs to this simple
class.

thanks - chris

--
Christian Tismer :^) <mailto:ti****@ stackless.com>
Mission Impossible 5oftware : Have a break! Take a ride on Python's
Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/
14109 Berlin : PGP key -> http://wwwkeys.pgp.net/
work +49 30 89 09 53 34 home +49 30 802 86 56 mobile +49 173 24 18 776
PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04
whom do you want to sponsor today? http://www.stackless.com/
Jul 18 '05 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
1152
by: Christian Tismer | last post by:
Dear friends, just by chance, I got into the position to try out Zope 2.7.0 beta 1/2, and since it needs Python 2.2.3 at least, and Stackless 3.0 was just ported to that, I tried to build Zope with Stackless 3.0. It works very very well! After a few patches to get the includes right, here the installation instructions.
7
1681
by: Christian Tismer | last post by:
New Win32 binaries have been uploaded to the Stackless website. Some compatibility issues with certain constructors have been solved. Please let me know of any problems. more to come soon - cheers -- chris -- Christian Tismer :^) <mailto:tismer@stackless.com>
0
1337
by: Christian Tismer | last post by:
As already announced, the *********************************************** *** *** *** S t a c k l e s s S p r i n t *** *** *** *********************************************** has now a settled date: It will take place in Berlin, March 10-14 2004.
4
2280
by: Christian Tismer | last post by:
Dear Former Stackless Users, I have to use this list to announce something really bad to you, since all the Stackless lists are defunct: The Stackless project is finally dead, now and forever. If this doesn't affect you, please don't worry and just ignore it. I don't take any responsibilities for any harm brought to you, your family or your descendants
28
4844
by: Matt Leslie | last post by:
Hi, I'm trying to use microthreads under stackless python, since they sound like exactly what I am after, but I am having very little success. I've got a fresh install of python 2.3.3 from python.org, then downloaded the binary python2.3 release of stackless python from www.stackless.com. This contained three files: python23.dll, python23.lib, python23.exp
11
2656
by: binarybana | last post by:
After recently getting excited about the possibilities that stackless python has to offer (http://harkal.sylphis3d.com/2005/08/10/multithreaded-game-scripting-with-stackless-python/) and then discovering that the most recent version of stackless available on stackless.com was for python 2.2 I am wondering if Stackless is dead/declining and if so, are there any viable alternatives that exist today? I found LGT http://lgt.berlios.de/ but...
0
1195
by: Richard Tew | last post by:
There is a Stackless Python sprint planned for PyCon 2006 during the days of the 27th of February to the 2nd of March (the post-conference sprint period). The goal is to update Stackless making it more current and approachable. We are planning to port it to the latest version of Python. But anyone who has an interest in Stackless is welcome to come along and help out in any way that appeals to you. You can read more about the sprint...
0
943
by: Linnorm | last post by:
I've written a port forwarding wrapper with paramiko for an app we use and it works fine except that it consumes way too much processor. (i.e. 25% +) I'm trying to write a stackless-based server class to replace the threading one but I can't get the tunnel the wrapper creates to work for more than one instance of the app. I based my code on the example HTTP server on the stackless site. Relevant code follows. The glovia variable is the...
0
1747
by: davy zhang | last post by:
thank you very much for the advices! I asked myself many times, why not just use thread:D After some research I found thread has some fatal defects 1. thread number is limited by os, that means the system don't want you start many threads at the same time 2. thread pool is another approach for concurrent program, but the context switching could be very costy
0
8445
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8871
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8781
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
8551
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
7386
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
4198
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
4369
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
2771
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
1776
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.