Summary: | undefined symbol: gtk_widget_path_iter_set_object_name | ||
---|---|---|---|
Product: | Sisyphus | Reporter: | Ivan Zakharyaschev <imz> |
Component: | firefox | Assignee: | Alexey Gladkov <legion> |
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
Severity: | major | ||
Priority: | P3 | CC: | glebfm, lav, legion, rauty, sbolshakov, vostok |
Version: | unstable | ||
Hardware: | all | ||
OS: | Linux | ||
Bug Depends on: | |||
Bug Blocks: | 33085 |
Description
Ivan Zakharyaschev
2016-07-21 15:42:17 MSK
Why hasn't this problem with symbols been caught by set-versions, I wonder? Because I believe that it's a local miss-configuration. There must have been no special local configuration, only some old (and some new) packages installed and not touched. This healed the problem: apt> install libgtk+3 Unrequested changes are needed to execute this operation. The following packages will be upgraded libgtk+3 libgtk+3-devel libgtk+3-gir libgtk+3-gir-devel The following NEW packages will be installed: gtk+3-themes-incompatible 4 upgraded, 1 newly installed, 0 removed and 0 kept. Will need more 6868kB of archives. After unpacking will need more 192kB of disk space. Do you want to continue? [Y/n] apt> commit The following packages will be upgraded libgtk+3 libgtk+3-devel libgtk+3-gir libgtk+3-gir-devel The following NEW packages will be installed: gtk+3-themes-incompatible 4 upgraded, 1 newly installed, 0 removed and 648 not upgraded. Need to get 0B/6868kB of archives. After unpacking 192kB of additional disk space will be used. Do you want to continue? [Y/n] Committing changes... The new firefox package does not work with some a bit old libgtk+3 packages... Now I can try to reproduce this by reverting back to the old gtk+3 packages... 100% не работает на: [root@localhost ~]# rpm -qa | grep libgtk+3 libgtk+3-gir-3.10.4-alt1 libgtk+3-3.10.4-alt1 При обновлении с FF 44 на FF 47 всё прошло без предупреждений. Соответственно никакие set-version не помогли в данном случае. (In reply to comment #4) > 100% не работает на: > [root@localhost ~]# rpm -qa | grep libgtk+3 > libgtk+3-gir-3.10.4-alt1 > libgtk+3-3.10.4-alt1 У меня случай был даже на более свежей версии: libgtk+3-3.18.8-alt2 (мог бы повторить, вернув те версии, но пока руки не дошли) > При обновлении с FF 44 на FF 47 всё прошло без предупреждений. Соответственно > никакие set-version не помогли в данном случае. Может, кому интересно, но всё сломалось с 45-ой версии FF. Проверил 47, 46, 45, работает только 44. Please approve task 174017 with 50.0.2-alt2 which is supposed to improve this: - Precise calculation of the dependency on libgtk symbols (ALT#32297) (and strict verification of unresolved symbols) (Thx ruslandh@'s work on strict unresolved symbols verification in palemoon.) $ git --no-pager diff HEAD^^..HEAD^ diff --git a/firefox.spec b/firefox.spec index 2b2b63a..33a5286 100644 --- a/firefox.spec +++ b/firefox.spec @@ -178,6 +178,13 @@ MOZ_OPT_FLAGS=$(echo $RPM_OPT_FLAGS -fPIC -Wl,-z,relro -Wl,-z,now | \ ) export CFLAGS="$MOZ_OPT_FLAGS" export CXXFLAGS="$MOZ_OPT_FLAGS" +# Add fake RPATH +rpath="/$(printf %%s '%firefox_prefix' |tr '[:print:]' '_')" +export LDFLAGS="$LDFLAGS -Wl,-rpath,$rpath" +%if_without system_nss +# see mozilla/security/nss/coreconf/Linux.mk:203 +export RPATH="-Wl,-rpath,$rpath" +%endif export PREFIX="%_prefix" export LIBDIR="%_libdir" @@ -227,6 +234,20 @@ make -C objdir \ libdir=%_libdir \ install +# Add real RPATH +rpath="/$(printf %%s '%firefox_prefix' |tr '[:print:]' '_')" +find %buildroot/%firefox_prefix -type f -print0 | +while read -r -d '' f; do + t="$(readlink -ev "$f")" + + file -- "$t" | fgrep -qs ELF || continue + + if chrpath -l "$t" | fgrep -qs "PATH=$rpath"; then + chrpath -r "%firefox_prefix" "$t" + fi +done +%set_verify_elf_method unresolved=strict + # install altlinux-specific configuration install -D -m 644 %SOURCE8 %buildroot/%firefox_prefix/browser/defaults/preferences/all-altlinux.js Here is how the dependency has got more precise: $ compare_packages -a --requires -- /ALT/Sisyphus/x86_64/RPMS.classic/firefox-50.0.2-alt1.x86_64.rpm -- ~/hasher/repo/x86_64/RPMS.hasher/firefox-50.0.2-alt1.x86_64.rpm --- /tmp/.private/imz/compare_packages.vskrgWZ4TP/1 2016-12-06 16:04:40.822816774 +0300 +++ /tmp/.private/imz/compare_packages.vskrgWZ4TP/2 2016-12-06 16:04:40.828816734 +0300 @@ -40,13 +40,13 @@ libgcc_s.so.1(GCC_3.3)(64bit) libgcc_s.so.1(GCC_3.4)(64bit) libgcc_s.so.1(GCC_4.0.0)(64bit) -libgdk-3.so.0()(64bit) >= set:nmGow1 +libgdk-3.so.0()(64bit) >= set:nf8PwA630VTRhMdY3UJZBMuUg9O34uwlzC05KjJ1gV3TtA4HGdDFmlfExmT6Ciu9u5dtOxCshkFgXDYKEeLCS1r6eFRDvtH96efY2g5diNR4CtasVgLfwofNg1sOFh6UaZpkX3r8IQKg9byOITslz2lJDN2EJ5nOFIRfZJH0mZ1PvzbMF3Ry6r3kreg18DOkGQZ0zrCtgI4D1EdPX1VRrXswG0kZh8eLPRj7KOxhneF3ZHZfaMT4CsExWT1CyRaIZrw7Av2FJamrJmx3vYZJojRVY1d5VY7UnGCF5c8Owi7thdjP1qMl4tQwUfUC9QNjSql3kEOi3iZio09 libgdk-x11-2.0.so.0()(64bit) libgdk_pixbuf-2.0.so.0()(64bit) >= set:lgnLZlVCS16t3jD6kNOWSYPWoC0jFaIF01CiqLB0NNj3KxDHGO0 libgio-2.0.so.0()(64bit) >= set:oiDURQYOLc5K71lMwpVLAlDhA7vgZjpwx77Sf6zF9yCfv9HXMwM9qdWkXc5rluxpQXxINV0CAh8swg8RHBTPqCxBCvJ2ZiavhqzTgVRQgaD2H59HBZ5Cn464mzpemSRN3EtzHhIJ8pTZh libglib-2.0.so.0()(64bit) >= set:oh6Jjraz6mRpYgJhENEZCSs2NkDeJdFr4Wa8Oz6BF4wVOXj2QYgBou4uHoj3fGTr4fGrIp0wRwJpXsu2DjdL7kROyid1KkT9c8fm5vtUPhzgpLPIZsRRy99JpFicmQNzdv8X4og4xANTyWj1wF002cCeo5bIVVtWAMRehKfuRw3cE0pjRafcFtpIM3dqcCWm1cdjKj0l6KEjS7Ri8OwM82eqDhW8jdMRwW5UJIeOWHnU5bcqxeA0rPoth6HJ7pdzS9YZawAsG070 libgobject-2.0.so.0()(64bit) >= set:mgX8o2bTFZgxZIrkD3XdTLPQ7S0pdELQmxkcixFDsIjy5VUnc1bPlrvMBnjM3AUKPc9ZemnHFYgxDYkXaVGk0UorlzJ69RlI6liYx05jvSnRFhWh7R4s5Zjtc7OKUZ50AiIRD6Lyiy1 -libgtk-3.so.0()(64bit) +libgtk-3.so.0()(64bit) >= set:qhjBFRzhmUSA1JxGt4I2Nu1PRErHmMyJX53SZdWswanXfXeVMJxJxXHXKh11IUamZw73rKzUVJwOGwo7lbZI18ZFZDXIpuI2ZEButQfZbFTPZxvQ3GmVXbxRx4hlA8rgfEs5bb2KZi3o3cgMkjiyE2aZgeLcGBChfKduoai1oU5sL3qHXEBUH88dR1Q9VySDgBGgJP2WOAMv8BWamIH0amrTDpRhTb7zHshCX6VCPZgkfZJh0dnhwb3p53ZehVLIYThYJGT2lYzhovSN2aeVIFJ6uqaZ5JT8hybB0w2jQhXtzB7mk3EYyY7tWySNFnxhnDno57pxsrUrmtewRfLtAemkz9fUahNFlKen6Bp72CEWlZbZze4Ztzr0OvZr9HZixS02DmY7hR3g7HC3poTeevAYLq6HyyJvI3cpdm56S5wuGZGrQoeIJL2sJKI0KrWJXJrH4Z6E6uAPycKsTmuKXGIsvhBhbjoWZ8x3arePOYVnnrq8LH0mmEINx2eO9KeEdjRkkmzZksp6W7XdvL4iWbvCTOgu5bdZpJVDg1ymC2ldyBuiITLD0myATuGKCkDIXVM9hSBZGZGJiqjIrBGPIKqGp5Gais0YSNBULOMx7wTW2cBNqiHg7CRSuZ0bH2sp2JmvGJZrUhurZzeuge3xil9TsjAgw8kfIl9cn4PtVe3eZyd3N9y79yv7vVifSAUk9R9q7R39otPWibncoZt1ngtgCgKJtbg5y9qdIpLIx7a8ZGJKZ0H7izflqHPa5VkhgZa2XNN8x59cUT8hZzUN1F2joZj3Z6ZG1kLc2DSwoRnLkDCAxNWMqSiRWFeRabvt4wkdch6PgCfMbFC1p2J5IRcn8L7JziSupINI3YZuPGeKn5WrXxZ33sG2D9ZvZnMZgIHevng7bedVFA2h0n9OqPnPlEPpVcXENuIPQIIWdCGOC6TG1SSow56qGNzn2eRlQ1ATemtZaNgMef6D8s5uCCXm8GhgZpMpvK0TAeWau2GEcR3bPoYsF379RZEVuOGcc3kdGXT650Es6rup1lhS8mBKBUdNS7HxOHf9avoKrAKv9ctOWGj3aOoXoONCE7VBon7kGZmZzZ8AYelSc3RBjojAECfGjvGUo5HaCDor1ZlfZK6BeUVeo7o7 libgtk-x11-2.0.so.0()(64bit) libhunspell.so.2()(64bit) >= set:mjmZjpxYkULYRK3Um libicui18n.so.56()(64bit) >= set:qkokXiK7jdxxZ3g6ZC26MhNAiZlbc0GH3Zt007SncGdmdDLYcgUM7yVnpwcq0T3oRQp8AQYoASlVcgO9OZ96n7Z4wZrUI30Z7jM5bQGbmNhXgm8qNg9TYqUu1 firefox-50.0.2-alt2 -> sisyphus: * Tue Dec 06 2016 Ivan Zakharyaschev <imz@altlinux> 50.0.2-alt2 - Precise calculation of the dependency on libgtk symbols (ALT#32297) and strict verification of unresolved symbols. (Thx legion@ for the original hack, which had to be removed in 44.0.2-alt3, but found to be restorable by ruslandh@'s work on strict unresolved symbols verification in palemoon.) |