Bug 15526

Summary: add version to the ABI
Product: Sisyphus Reporter: Ivan Zakharyaschev <imz>
Component: libgstreamerAssignee: Nobody's working on this, feel free to take it <nobody>
Status: CLOSED WONTFIX QA Contact: qa-sisyphus
Severity: normal    
Priority: P2 CC: icesik
Version: unstable   
Hardware: all   
OS: Linux   
Bug Depends on:    
Bug Blocks: 14603, 15702    

Description Ivan Zakharyaschev 2008-05-02 03:07:44 MSD
There is a need for versioned symbols --
https://bugzilla.altlinux.org/show_bug.cgi?id=14603 .

The problem happens for pkgs built with a recent version (say, 0.10.19-alt1) and
used with 0.10.14-alt1.


Steps to Reproduce:
$ ldd -r /usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so 
undefined symbol: gst_bus_timed_pop_filtered   
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_base_transform_set_gap_aware     
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_base_sink_set_async_enabled      
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_lfo_waveform_get_type    
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_base_sink_get_last_buffer
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: libxml_xmlDocPtrWrap 
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_bus_pop_filtered 
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_base_src_get_do_timestamp
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_util_get_timestamp       
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_pad_peer_query   
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_base_src_set_do_timestamp
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_base_sink_set_ts_offset  
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_base_sink_is_async_enabled       
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_base_sink_get_ts_offset  
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
undefined symbol: gst_lfo_control_source_get_type      
(/usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so)
        linux-gate.so.1 =>  (0xb7f3e000)
        libgstcontroller-0.10.so.0 => /usr/lib/libgstcontroller-0.10.so.0
(0xb7e97000)
        libgstnet-0.10.so.0 => /usr/lib/libgstnet-0.10.so.0 (0xb7e90000)
        libgstdataprotocol-0.10.so.0 => /usr/lib/libgstdataprotocol-0.10.so.0
(0xb7e8c000)
        libgstbase-0.10.so.0 => /usr/lib/libgstbase-0.10.so.0 (0xb7e67000)
        libgstreamer-0.10.so.0 => /usr/lib/libgstreamer-0.10.so.0 (0xb7dc9000)
        libgobject-2.0.so.0 => /lib/libgobject-2.0.so.0 (0xb7d90000)
        libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0xb7cc5000)
        libpython2.5.so.1.0 => /usr/lib/libpython2.5.so.1.0 (0xb7ba9000)
        libc.so.6 => /lib/libc.so.6 (0xb7a81000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb7a69000)
        libgthread-2.0.so.0 => /lib/libgthread-2.0.so.0 (0xb7a65000)
        libgmodule-2.0.so.0 => /lib/libgmodule-2.0.so.0 (0xb7a62000)
        libdl.so.2 => /lib/libdl.so.2 (0xb7a5e000)
        libxml2.so.2 => /usr/lib/libxml2.so.2 (0xb7942000)
        libutil.so.1 => /lib/libutil.so.1 (0xb793e000)
        libm.so.6 => /lib/libm.so.6 (0xb7917000)
        /lib/ld-linux.so.2 (0x80000000)
        librt.so.1 => /lib/librt.so.1 (0xb790e000)
        libz.so.1 => /lib/libz.so.1 (0xb78fa000)
$ rpm -qf /usr/lib/python2.5/site-packages/gst-0.10/gst/_gst.so
python-module-gst-0.10.10-alt1
$
Comment 1 Igor Zubkov 2008-05-07 15:41:11 MSD
reassign
Comment 2 Valery Inozemtsev 2008-05-15 13:01:59 MSD
там уже есть свой version script без версии, который генерится при сборке. 
если туда добавить версию, то придется после каждого нового libgstreamer 
пересобирать все что от него зависит, а это больший геморой чем есть
Comment 3 Ivan Zakharyaschev 2008-05-18 01:07:04 MSD
Так что нормального обновления с учётом зависимостей с помощью apt-get install
не будет, придётся при необходимости выискивать зависимости и дообновлять.
Может, пусть лучше робот попересобирает пакеты, когда надо? (ведь при появлении
нового gstreamer всё равно часто нужно пересобирать то, что от него зависит)

Например, сейчас даже с новым gstreamer не всё впорядке с python-module-gst --
https://bugzilla.altlinux.org/show_bug.cgi?id=15696 .
Comment 4 Valery Inozemtsev 2008-05-20 12:59:14 MSD
*** Bug 15702 has been marked as a duplicate of this bug. ***