Neither System-1.9.0 nor the current CVS snapshot from 06/05/04 works with the recently released libgtop-2.6.0 (ftp://ftp.gnome.org/pub/GNOME/sources/libgtop/2.6/).
System-1.9.0 refuses to compile due to a missing header (the last version of libgtop that still includes this header is libgtop-2.0.8):
[root@disclosure]:/usr/local/apps/System# sh AppRun --compile
Compiling /usr/local/apps/System... please wait...
creating cache ./config.cache
checking that pkg-config runs... yes
checking that gtk+-2.0 (version >= 2.0.1) is installed... yes
checking that libgtop-2.0 (version >= 2.0.0) is installed... yes
checking for gcc... gcc
checking whether the C compiler (gcc ) works... yes
checking whether the C compiler (gcc ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking whether make sets ${MAKE}... yes
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for unsetenv... yes
checking for getopt_long... yes
checking extracting version information... version 1.9.0
updating cache ./config.cache
creating ./config.status
creating Makefile
creating config.h
config.h is unchanged
rm -f *.o Makefile.bak
gcc -g -O2 -Wall -Wmissing-prototypes `pkg-config --cflags gtk+-2.0 libgtop-2.0` -c -o main.o main.c
gcc -g -O2 -Wall -Wmissing-prototypes `pkg-config --cflags gtk+-2.0 libgtop-2.0` -c -o filesys.o filesys.c
filesys.c:30: glibtop/xmalloc.h: No such file or directory
make: *** [filesys.o] Error 1
Compile failed
Press Return...
[root@disclosure]:/usr/local/apps/System#
After installing ctypes-0.6.3 and libffi-snapshot20030119, I tried the CVS snapshot from 06/05/04. Unfortunately, it is also still looking for the old library, libgtop-2.0.so.0:
Traceback (most recent call last):
File "./AppRun", line 10, in ?
from processes import Processes
File "./processes.py", line 4, in ?
import top, os, cell_bar
File "./top.py", line 21, in ?
libgtop = cdll.LoadLibrary('libgtop-2.0.so.0')
File "/usr/local/stow/Python-ctypes-0.6.3/lib/python2.2/site-packages/ctypes/__init__.py", line 286, in LoadLibrary
return self._dlltype(name)
File "/usr/local/stow/Python-ctypes-0.6.3/lib/python2.2/site-packages/ctypes/__init__.py", line 222, in __init__
self._handle = LoadLibrary(self._name)
OSError: libgtop-2.0.so.0: cannot open shared object file: No such file or directory
Changing top.py to make it look for the new library, libgtop-2.0.so.2, doesn't work either. It complains about a missing symbol from libgtop-2.0.x, which is no longer present in libgtop-2.6.0:
Traceback (most recent call last):
File "./AppRun", line 73, in ?
MainWindow().show()
File "./AppRun", line 33, in __init__
filesystems = FileSystems()
File "./filesystems.py", line 44, in __init__
self.update()
File "./filesystems.py", line 53, in update
mounts = top.get_mountlist()
File "./top.py", line 128, in get_mountlist
libgtop.glibtop_free_r(server, mounts)
File "/usr/local/stow/Python-ctypes-0.6.3/lib/python2.2/site-packages/ctypes/__init__.py", line 233, in __getattr__
func = self._CdeclFuncPtr(name, self)
AttributeError: /usr/local/lib/python2.2/site-packages/_ctypes.so: undefined symbol: glibtop_free_r
Unlike many other Gnome packages ([lib]gtkhtml, libsoup, libgal, gstreamer, ...), it is _not_ possible to have libgtop-2.0.x and -2.6.x installed in parallel, as they're both keeping their libraries and headers under libgtop-2.0.
Logged In: YES
user_id=40461
There have been some recent updates to CVS. It seems to work
here with Debian's libgtop 2.12.2. Does it work for you now?
Logged In: YES
user_id=150806
Unfortunately I haven't yet updated to the
latest-and-greatest GNOME 2.12 and rox-2.4.x, so I couldn't
tell right now. It's among the very next things on my TODO
list when/if I have time, though, so I'd like to keep this
bug open until then, if you don't mind.
If you like to close this bug now, though, feel free to do
so. I can always reopen it or file a new one later on if it
turns out to be necessary.
Thanks!
Logged In: YES
user_id=150806
Okay, I just installed System-1.9.1. I tried several
combinations of libgtop and ctypes, and here's what I found:
It works fine with libgtop-2.12.2 and both ctypes-0.6.3 and
ctypes-0.9.6.
It does not work, however, with libgtop-2.12.2 and
ctypes-0.9.9.3, and with the just released libgtop-2.14.0
and any of the ctypes versions I tried.
With ctypes-0.9.9.3, the problem seems to be within ctypes
itself. I get a window complaining "OSError:
libLoadLibrary.so: cannot open shared object file: No such
file or directory" as a result of "libgtop =
cdll.LoadLibrary('libgtop-2.0.so')" in top.py, line 19. This
seems to indicate that ctypes is trying to find a shared lib
for a method ("LoadLibrary") that it is actually supposed to
provide itself.
The other two combinations with libgtop-2.14.0 just segfault
on startup:
[zlatko@disclosure]:~$ /usr/local/apps/System/AppRun
glibtop: This machine has 1 CPUs, 1 are being monitored.
*** glibc detected *** double free or corruption (out):
0x08206240 ***
Aborted
[zlatko@disclosure]:~$ /usr/local/apps/System/AppRun
glibtop: This machine has 1 CPUs, 1 are being monitored.
*** glibc detected *** double free or corruption (out):
0x08208e88 ***
Aborted
So, here's a short summary of libgtop/ctypes versions and
the results when running System-1.9.1:
2.12.2/0.6.3: OK
2.12.2/0.9.6: OK
2.12.2/0.9.9.3: LoadLibrary problem
2.14.0/0.6.3: segfault
2.14.0/0.9.6: segfault
2.14.0/0.9.9.3: LoadLibrary problem
Logged In: YES
user_id=1021919
I've seen the ctypes problem on Gentoo - I had to pin the
install to the pre 9.9.x version here. I assumed that it
was a problem with ctypes on Gentoo. I'll try to
investigate further.
As for the libgtop-2.14, I'm building garnome right now, so
I should be able to test and update it soon. I assume it is
a separate problem from the ctypes issue.
Logged In: YES
user_id=1021919
The ctypes issue about LoadLibrary should be fixed in SVN
now. I changed cdll.LoadLibrary('libgtop-2.0.so') to
CDLL('libgtop-2.0.so').
Logged In: YES
user_id=150806
Update: ctypes-0.9.9.6 has been released meanwhile, which
fixes the LoadLibrary problem (see
http://sourceforge.net/project/shownotes.php?group_id=71702&release_id=411554
for details). Net effect of this new release is that the
libgtop-2.14.x/ctypes-0.9.9.6 combinations now change from
"LoadLibrary problem" to "segfault". I'm currently using
ctypes-0.9.9.6 and libgtop-2.14.1.