Bug 937665

Summary: libpy2UI.so.2: undefined symbol
Product: [openSUSE] openSUSE Tumbleweed Reporter: Markus Elfring <Markus.Elfring>
Component: YaST2Assignee: E-mail List <yast2-maintainers>
Status: RESOLVED FIXED QA Contact: Jiri Srain <jsrain>
Severity: Major    
Priority: P5 - None CC: Markus.Elfring
Version: Current   
Target Milestone: ---   
Hardware: x86-64   
OS: SUSE Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Markus Elfring 2015-07-10 14:16:02 UTC
I have updated some software once more on my Tumbleweed system after I have achieved a bit of progress for the combination of "libmodman" and "libproxy".
https://bugzilla.opensuse.org/show_bug.cgi?id=937157#c5

Now I stumble on another open issue when I want to look into the package list by the corresponding YaST2 management module.

Sonne:~ # /sbin/yast2 sw_single
/usr/lib/YaST2/bin/y2base: symbol lookup error: /usr/lib64/YaST2/plugin/libpy2UI.so.2: undefined symbol: _ZN9YSettings10setProgDirENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE


* Component: yast2-ycp-ui-bindings 3.1.8-1.1
  Installed: Fr 10 Jul 2015 13:19:54 CEST

* Component: yast2-core 3.1.17-3.3
  Installed: Fr 03 Jul 2015 16:47:32 CEST


Sonne:~ # objdump --dynamic-reloc --demangle /usr/lib64/YaST2/plugin/libpy2UI.so.2.0.0 | grep setProgDir
00000000002969d8 R_X86_64_JUMP_SLOT  YSettings::setProgDir(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)
Sonne:~ # objdump --dynamic-syms /usr/lib64/YaST2/plugin/libpy2UI.so.2.0.0 | grep setProgDir
0000000000000000      DF *UND*  0000000000000000              _ZN9YSettings10setProgDirENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE


How will the specifications for corresponding software dependencies become consistent again?
Comment 1 Arvin Schnell 2015-07-10 14:48:18 UTC
YSettings::setProgDir() is defined in libyui so please ensure that new
versions of that library and its sub-libraries are also installed.

Tumbleweed switched to gcc 5 and there have been ABI changes to some STL
classes, e.g. string, so maybe the standard library dependencies alone
does not work.
Comment 2 Markus Elfring 2015-07-10 15:08:30 UTC
(In reply to Arvin Schnell from comment #1)
> YSettings::setProgDir() is defined in libyui so please ensure that new
> versions of that library and its sub-libraries are also installed.

I started another software update a moment ago.

Component: libyui 3.1.5-1.4
Installed: Fr 10 Jul 2015 16:53:15 CEST


The management GUI works again now.


> Tumbleweed switched to gcc 5 and there have been ABI changes to some STL
> classes, e.g. string, so maybe the standard library dependencies alone
> does not work.

How are the chances that such application binary interface adjustments will trigger appropriate updates for YaST2 modules automatically?

Do descriptions need any more fine-tuning for corresponding RPM specifications?
Comment 3 Arvin Schnell 2015-07-10 16:38:38 UTC
(In reply to Markus Elfring from comment #2)
 
> I started another software update a moment ago.
> 
> Component: libyui 3.1.5-1.4
> Installed: Fr 10 Jul 2015 16:53:15 CEST

> The management GUI works again now.

Fine, so we can close this particular bug.
 
> > Tumbleweed switched to gcc 5 and there have been ABI changes to some STL
> > classes, e.g. string, so maybe the standard library dependencies alone
> > does not work.
> 
> How are the chances that such application binary interface adjustments will
> trigger appropriate updates for YaST2 modules automatically?
> 
> Do descriptions need any more fine-tuning for corresponding RPM
> specifications?

You could ask that question on opensuse-factory.