Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 56621 - NEW: ebuild for gst-python-0.7.92 (Python bindings for gstreamer)
Summary: NEW: ebuild for gst-python-0.7.92 (Python bindings for gstreamer)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Lowest enhancement (vote)
Assignee: GStreamer package maintainers
URL:
Whiteboard:
Keywords:
: 76790 (view as bug list)
Depends on:
Blocks: 84968
  Show dependency tree
 
Reported: 2004-07-10 10:37 UTC by Stefan Briesenick (RETIRED)
Modified: 2005-03-16 02:14 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
gst-python-0.7.92.ebuild (gst-python-0.7.92.ebuild,651 bytes, text/plain)
2004-07-10 10:38 UTC, Stefan Briesenick (RETIRED)
Details
gst-python-0.7.93.ebuild (gst-python-0.7.93.ebuild,943 bytes, text/plain)
2004-10-22 04:51 UTC, Zaheer Abbas Merali (RETIRED)
Details
gst-python-0.7.94.ebuild (gst-python-0.7.94.ebuild,1.04 KB, text/plain)
2004-11-06 08:15 UTC, Zaheer Abbas Merali (RETIRED)
Details
gst-python-0.8.1.ebuild (gst-python-0.8.1.ebuild,1.08 KB, text/plain)
2005-03-03 22:01 UTC, Zaheer Abbas Merali (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Briesenick (RETIRED) gentoo-dev 2004-07-10 10:37:07 UTC
see summary. ;-)

Reproducible: Always
Steps to Reproduce:
Comment 1 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-10 10:38:22 UTC
Created attachment 35122 [details]
gst-python-0.7.92.ebuild

prefered location: dev-python/gst-python
homepage: http://gstreamer.freedesktop.org/
Comment 2 Ryan Bourgeois 2004-07-29 21:39:23 UTC
This ebuild failed to work due to a problem with xmlto not being able to convert HTML to text or something.  I fixed that by editting the eBuild so that it wouldn't compile the documentation.

That was only the first problem.  Second problem is that Python's dl module doesn't seem to exist, so gst-python doesn't work anyway, seeing as it needs to import this module:

bash-2.05b$ python ./player.py
Traceback (most recent call last):
  File "./player.py", line 22, in ?
    import gst
  File "/usr/lib/python2.3/site-packages/gst/__init__.py", line 24, in ?
    import dl
ImportError: No module named dl

And so that is where this seemingly broken eBuild stands...
Comment 3 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-30 01:40:34 UTC
No, it isn't broken, it WORKS!

stefan@wintv:/vol1/rip> python /usr/share/doc/gst-python-0.7.92/examples/gstplay/player.py ride.wav
stream length: 00:00:00.000000

and music is playing.

maybe some missing dependencies?
Comment 4 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-30 01:52:02 UTC
ok, I re-emerged my ebuild.

1. no xmlto problem
2. player.py works

and now?

we have to find out, what's missing. I think I forgot one or more needed dependencies. So I have the needed packages installed and you not. So the only thing we have to do, is to fix the DEPEND=".." line.
Comment 5 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-30 01:55:44 UTC
python "import dl; help(dl)"

----------------------------------------

Help on module dl:

NAME
    dl

FILE
    /usr/lib/python2.3/lib-dynload/dl.so

CLASSES
    exceptions.Exception
        error

    class error(exceptions.Exception)
     |  Methods inherited from exceptions.Exception:
     |
     |  __getitem__(...)
     |
     |  __init__(...)
     |
     |  __str__(...)

FUNCTIONS
    open(...)

DATA
    RTLD_GLOBAL = 256
    RTLD_LAZY = 1
    RTLD_LOCAL = 0
    RTLD_NODELETE = 4096
    RTLD_NOLOAD = 4
    RTLD_NOW = 2
Comment 6 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-30 01:57:13 UTC
epm -qf /usr/lib/python2.3/lib-dynload/dl.so

python-2.3.4

so it seems, that you have a broken python installation. Try to fix this first!
Comment 7 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-30 01:59:21 UTC
my python-USE-flags:

+X -berkdb -bootstrap -build -debug -doc +gdbm +ipv6 +ncurses +readline +ssl +tcltk -ucs2
Comment 8 Ryan Bourgeois 2004-07-30 22:33:49 UTC
Alright, for starters, your USE flags are invalid.  Emerge complains out the wang if you prepend USE flags with the + sign.  Secondly, I just reemerged Python and it still didn't give me the necesary dl.so file.  I then proceded to download the latest stable version (2.3.4) from python.org and configure and compile it by hand.  I tried a couple different options and it still didn't give the dl.so file.

On a side note, my system's install is a stage1 install less than two weeks old.

As far as the xmlto error goes, I haven't looked at that in detail, all I know is that regardless of whether I emerge gst-python or compile it from scratch it gives me the error unless I configure it with --disable-docs.
Comment 9 Ryan Bourgeois 2004-07-30 22:39:13 UTC
Hold, I found the problem.  Gentoo doesn't have the dl module anyway.  I'm looking at the CVS repository for gst-python and reading changes to the file that calls import dl.  A change has been made so that it doesn't import that module.  It even specifically mentions Gentoo.

So, in whort, we need an ebuild that pulls it from CVS in order for it to work on modern Gentoo systems...
Comment 10 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-31 03:26:23 UTC
well, why in hell does *my* python has dl.so?
it's also a stage1 install!

Wait, I check it on another PC...

epm -qa | grep ^python-2

python-2.3.4

on all machines

epm -ql python | sort | grep "dl.so"

pc1: /usr/lib/python2.3/lib-dynload/dl.so
pc2: /usr/lib/python2.3/lib-dynload/dl.so
laptop: /usr/lib/python2.3/lib-dynload/dl.so

three machines, three times the same result. So either my Gentoo's are alien or yours!

and all are stage1 installations (of course! ;-)).
Comment 11 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-31 04:47:42 UTC
btw: my USE-flags are correct. It was just the output of

emerge -pv python

so that I can post only the relevant flags.

here are my "real" USE-flags:

USE="3dnow aac acl acpi adns amd artswrappersuid async audiofile bidi \
     bzlib caps cdb cddb cdf cdparanoia cdrom chroot codecs curl \
     curlwrappers dga dio djbfft dnd dts dv dvd dvdr dvdread exif expat \
     ext-png ext-zlib extensions faac faad fam fbcon ffmpeg fftw flac \
     flash foreign-package foreign-sysvinit freetype gd gd-external \
     gettext gimp gimpprint glut gmp gs gstreamer gtkhtml gui icq idea idl \
     ieee1394 imagemagick imap imlib2 inifile innodb ipv6 jabber jack \
     jack-tmpfs java javascript jbig jikes jit joystick jp2 ladcca lcms \
     libcaca libsamplerate live lzo lzw lzw-tiff matroska mbcvs mbox mcal \
     md5sum memlimit mmx mng monkey mozcalendar mozdomi moznocompose \
     moznoxft mozp3p mozsvg mpeg4 mplayer mysqli native net network nis \
     nptl nvidia offensive ooo-kde openal pcre pda pic plotutils portaudio \
     posix ppds psyco pthreads recode rtc samba shared sharedmem slp \
     sndfile socks5 sox speex sqlite svg szip t1lib theora threads tiff \
     timidity transcode type1 usb v4l v4l2 wifi wmf wxwindows X509 xalan \
     xbase xface xine xinerama xml xosd xprint xsl xvid yv12 -gpm -gtk2 \
     -gnome -berkdb"
Comment 12 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-31 05:07:38 UTC
ok, now I check the python-ebuild. It's an absolute bad habbit not to use 'use_with' and 'use_enable' for *all* supported configure-flags, but let the configure choose some of the flags. So you can't reproduce a merge, if you don't know all the other installed libs.

here are some flags, which should be added (or fixed internally) to the python-ebuild:

--with-signal-module
--with(out)-universal-newlines
--with(out)-doc-strings  (could be used with 'doc' flag)
--with-dl-dld=DL_DIR (aha!)
--with-wctype-functions

now I try to figure out, when and where the dl-module is auto-selected.
Comment 13 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-31 05:18:38 UTC
./configure --prefix=/tmp/python

[..]
checking for dlopen... yes
checking DYNLOADFILE... dynload_shlib.o
[..]

the code in question is this one:

./Modules/dlmodule.c

in ./setup.py, we find this one:

  # Dynamic loading module
  if sys.maxint == 0x7fffffff:
      # This requires sizeof(int) == sizeof(long) == sizeof(char*)
      dl_inc = find_file('dlfcn.h', [], inc_dirs)
      if (dl_inc is not None) and (platform not in ['atheos', 'darwin']):
          exts.append( Extension('dl', ['dlmodule.c']) )

so 'dl.so' will not be built, when:

- sys.maxint isn't 0x7fffffff (perhaps on some 64-Bit archs)
- dlfcn.h can't be found

dlfcn.h is located in /usr/include/dlfcn.h (at least on my systems).

epm -qf /usr/include/dlfcn.h

tells me: glibc-2.3.4.20040619

so it's part of glibc.

hmmm...
Comment 14 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-31 05:27:30 UTC
hmmm. It's not clever to use 'dl', when the above rules are not met and so 'dlmodule' isn't available. *THIS* is really a Bug in gst-python. Nonetheless, it should be there at least on x86 (for which my ebuild was made and tested, see 'KEYWORDS').

[/usr/lib/python2.3/site-packages/gst/__init__.py]

import sys
import dl

try:
   import ltihooks
except:
   pass

import gobject
del gobject

sys.setdlopenflags(dl.RTLD_LAZY | dl.RTLD_GLOBAL)
del sys, dl

from _gst import *
Comment 15 Ryan Bourgeois 2004-07-31 07:53:08 UTC
Did you even look at the current CVS snapshot of gst-python?  It replaces dl with dlfcn.  Not to mention, the CVS snapshot compiles and runs cleanly on my machine, as opposed to the version this eBuild is for.

Secondly, this is an AMD64 machine.
Comment 16 Stefan Briesenick (RETIRED) gentoo-dev 2004-07-31 13:45:24 UTC
hmpf! ;-)

I thought that, that you have amd64, because of the
"if sys.maxint == 0x7fffffff:" stuff.

well, my ebuild was correctly marked with KEYWORDS="~x86" so
it's clear, that I've tested it only on x86! If I had tested
it on other platforms, I would have set the corresponding
flags also. So it was not my fault nor the fault of my ebuild.

Please test it on x86 and put it into portage with '~x86'
for the time being. If the cvs code is released, then we
can set other platforms as well. I don't think, it's a
good idea to use cvs (and though unstable) code.
Comment 17 foser (RETIRED) gentoo-dev 2004-08-02 07:42:04 UTC
low prio, development release 
Comment 18 foser (RETIRED) gentoo-dev 2004-10-22 03:13:43 UTC
open
Comment 19 Zaheer Abbas Merali (RETIRED) gentoo-dev 2004-10-22 04:51:52 UTC
Created attachment 42411 [details]
gst-python-0.7.93.ebuild

Latest version of gst-python ebuild
Comment 20 Zaheer Abbas Merali (RETIRED) gentoo-dev 2004-11-06 08:15:46 UTC
Created attachment 43408 [details]
gst-python-0.7.94.ebuild

Version bump
Comment 21 Zaheer Abbas Merali (RETIRED) gentoo-dev 2004-11-21 02:42:42 UTC
gst-python-0.8.0 is out so will wait till freedesktop is fully operational before posting an updated ebuild
Comment 22 foser (RETIRED) gentoo-dev 2005-01-05 14:51:34 UTC
*** Bug 76790 has been marked as a duplicate of this bug. ***
Comment 23 Alex Jones 2005-02-16 09:19:31 UTC
This has turned stagnant.

Still no ebuild in Portage? What's causing the problems?
Comment 24 Stefan Briesenick (RETIRED) gentoo-dev 2005-02-16 10:01:15 UTC
don't know. So 'remind', 'remind', 'remind'. ;-)
Comment 25 Zaheer Abbas Merali (RETIRED) gentoo-dev 2005-03-03 22:01:35 UTC
Created attachment 52621 [details]
gst-python-0.8.1.ebuild

Version bump
Comment 26 Stefan Briesenick (RETIRED) gentoo-dev 2005-03-12 10:45:20 UTC
remind again. what's the stopper?
Comment 27 Zaheer Abbas Merali (RETIRED) gentoo-dev 2005-03-13 03:08:54 UTC
we'll get it in :)
Comment 28 Zaheer Abbas Merali (RETIRED) gentoo-dev 2005-03-15 16:10:06 UTC
ok committed into portage
Comment 29 foser (RETIRED) gentoo-dev 2005-03-15 16:53:56 UTC
ebuild is no good..
Comment 30 foser (RETIRED) gentoo-dev 2005-03-16 02:14:12 UTC
not as bad as i thought it was...