Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

#44 System-1.9.0/-CVS & libgtop-2.6.0

Compile/Install
open
nobody
Other (9)
5
2004-05-09
2004-05-09
Thomas Zajic
No

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.

Discussion

  • Thomas Leonard
    Thomas Leonard
    2006-02-08

    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?

     
  • Thomas Zajic
    Thomas Zajic
    2006-02-09

    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!

     
  • Thomas Zajic
    Thomas Zajic
    2006-03-15

    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

     
  • Ken Hayber
    Ken Hayber
    2006-03-17

    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.

     
  • Ken Hayber
    Ken Hayber
    2006-03-17

    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').

     
  • Thomas Zajic
    Thomas Zajic
    2006-05-10

    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.