Bug #3115
[icedove][p11-kit][multiple]: libffi.so.7: cannot open shared object file
100%
Description
- steps to reproduce:
$ icedove
- expected result:
It should run normally, as it did before upgrading libffi.
- actual result:
It prints this error message:XPCOMGlueLoad error for file /usr/lib/icedove/libxul.so: libffi.so.7: cannot open shared object file: No such file or directory Couldn't load XPCOM.
Icedove needs an upgrade so badly!
Subtasks
Related issues
History
Updated by avalos over 2 years ago
Emacs is working fine for me, I'm running version 27.2, build 1.
Updated by avalos over 2 years ago
Latest version of upstream (Thunderbird), 91.2.0-2, lists libffi.so=8-64
as a dependency, which means an upgrade to Icedove is what's needed.
Updated by laust over 2 years ago
On my system with emacs 27.2-1:
emacs: error while loading shared libraries: libffi.so.7: cannot open shared object file: No such file or directory
Downgrading libffi to the previous version (3.3-4) and glib2 makes emacs complain about missing libffi.so.8.
Updated by arnau over 2 years ago
Same problem here. This appeared since removing (compatibility) libffi.so.7 in 3.4.2-4:
https://github.com/archlinux/svntogit-packages/commit/856bd5b52222f1456334e0a08c13e58bdfda9db0
It seems that several packages in parabola must be rebuilt against libffi.so.8 as Arch did for this transition...
Updated by Jetpack over 2 years ago
- Plasma
- Konsole
- xfce4-terminal
- mpv
- Dolphin
- Kdenlive
- WeeChat
I'd strongly discourage upgrading Parabola until this issue is fixed
Updated by Jetpack over 2 years ago
avalos wrote:
Icedove needs an upgrade so badly!
I agree. Though I do believe the package maintainers are working on it. I sawan updated version of Icedove on a test repo.
I'm also curious as to why this happened. libffi and mpv, for instance, are from the Arch Linux repos, there's no Libre/Non-PRISM version of them on Parabola. I'm guessing mpv depends on a package which has a Libre version and it depends on libffi? If that's the case, then I believe there's no need to rebuild all of these packages.
Updated by avalos over 2 years ago
Jetpack wrote:
Like laust said, this problem is happening with other packages. I can't run these programs:
- Plasma
- Konsole
- xfce4-terminal
- mpv
- Dolphin
- Kdenlive
- WeeChat
All of these programs are running fine for me, except for WeeChat and xfce4-terminal, which I don't have installed. Emacs is also working.
Updated by Jetpack over 2 years ago
That's interesting. Maybe it's something to do with the additional repositories I have.
Updated by laust over 2 years ago
- cups
- dirmngr from package gnupg
- libreoffice
- okular
- skanlite
- kstars
- viking
There are probably others.
Note: dunst has been updated and now works. Hopefully the rest will follow.
Jetpack wrote:
These are the repositories I have:That's interesting. Maybe it's something to do with the additional repositories I have.
- [nonprism]
- [nonsystemd]
- [libre]
- [core]
- [extra]
- [community]
- [pcr]
Updated by Jetpack over 2 years ago
I am also using the nonprism and nonsystemd repositories. I can confirm LibreOffice does not work as well indeed, same for dirmngr. Fortunately GnuPG works.
Does anyone know which packages exactly require a rebuild?
Also, I tried running Plasma on X11 instead of Wayland and it freezes instead of closing immediately after opening. For now, I'm using Xfce with no problems.
Updated by kira64xyz over 2 years ago
I am also having this issue, I've narrowed it down to libp11-kit in nonsystemd.
The same issue also happens on a brand new install from the latest install medium.
For now, it can be mitigated by either manually installing the version of p11-kit from core or copying the libffi.so.7 library from a backup.
- ffmpeg
- mpd
- neomutt
Updated by dllud over 2 years ago
Same problem here, though only in icedove. Most other packages mentioned above (libreoffice, mpv, ffmpeg, mpd) are working fine. Do note that those packages come directly from Arch where they have probably been rebuilt to cater for the new libffi. Just check if you're running the latest version.
As for icedove, downgrading libffi to 3.4.2-3 works around the problem for the time being. Hopefully the maintainers will find the time to rebuild it soon.
Updated by Jetpack over 2 years ago
That was it, kira64xyz! Thanks for sharing this. I compiled libp11-kit myself and everything works again :)
Updated by avalos over 2 years ago
I figured out what was causing Python programs that rely on libffi to stop working. Turns out in PIP I had locally (--user
) installed (as a dependency) a version of PyGObject that relies on libffi.so.7
, so packages were loading it instead of the one globally installed by Pacman. I solved it by removing the user version of PyGObject so that programs load the Pacman version.
I uninstalled Icedove and switched to Claws Mail, but I think I'm switching back once Icedove is working again.
Updated by CommodoreCrunch over 2 years ago
Not to put too fine a point on it, but I did make a pull request for this a full week ago: https://pagure.io/abslibre/pull-request/32
I do understand that Parabola is a small distro with very busy volunteers, though. If you need a maintainer for nonsystemd packages, I'm available.
Updated by dario over 2 years ago
As a temporary fix I installed libffi7: https://aur.archlinux.org/packages/libffi7/
Updated by bill-auger over 2 years ago
- Status changed from unconfirmed to confirmed
- Subject changed from [icedove]: libffi.so.7: cannot open shared object file to [p11-kit][multiple]: libffi.so.7: cannot open shared object file
sry for the delay - p11-kit-0.24.0-2.nonsystemd1 fixes this (thanks CommodoreCrunch)
only non-systemd users were affected;
but not only the 'icedove' package (eg: QEMU will not start)
Updated by bill-auger over 2 years ago
- Assignee set to bill-auger
- Status changed from confirmed to in progress
Updated by kira64xyz over 2 years ago
can confirm, after upgrading everything is now fully functional again! Thanks a lot :)
Updated by bill-auger over 2 years ago
- Status changed from in progress to fixed
the pagure repo seems to be working out well - it may be good if it were more generally known, as a resource for all users to find patches, like maybe an extra "sources" link on each package page, for any PR matching the package name
in this case, it was a serious bug - CommodoreCrunch's PR could have been linked to a bug report immediately; and perhaps some users could have fixed their system based on that, even before any parabola dev reviewed the change
Updated by dllud over 2 years ago
only non-systemd users were affected
bill-auger, I am a systemd user and I am still affected, but just on icedove.
The p11-kit package I have installed comes from [core].
Updated by avalos over 2 years ago
dllud wrote:
only non-systemd users were affected
bill-auger, I am a systemd user and I am still affected, but just on icedove.
The p11-kit package I have installed comes from [core].
Same! I'm using systemd as well, and Icedove is the only package that doesn't work. Doesn't seem like p11-kit is related, but I don't even know what it is, so I'm not sure.
Updated by Jetpack over 2 years ago
dllud wrote:
only non-systemd users were affected
bill-auger, I am a systemd user and I am still affected, but just on icedove.
The p11-kit package I have installed comes from [core].
I'm having the same issue, but just with Icedove as well.
Updated by bill-auger over 2 years ago
- Status changed from fixed to in progress
- Subject changed from [p11-kit][multiple]: libffi.so.7: cannot open shared object file to [icedove][p11-kit][multiple]: libffi.so.7: cannot open shared object file
the complete error message is:
$ icedove XPCOMGlueLoad error for file /usr/lib/icedove/libxul.so: libffi.so.7: cannot open shared object file: No such file or directory Couldn't load XPCOM.
the icedove package may need to be pinned to libffi explicitly,
to prevent this in the future - i will re-open the tiket
$ lddtree /usr/lib/icedove/icedove /usr/lib/icedove/icedove (interpreter => /lib64/ld-linux-x86-64.so.2) libpthread.so.0 => /usr/lib/libpthread.so.0 libdl.so.2 => /usr/lib/libdl.so.2 libstdc++.so.6 => /usr/lib/libstdc++.so.6 libm.so.6 => /usr/lib/libm.so.6 libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 libc.so.6 => /usr/lib/libc.so.6 ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
Updated by bill-auger over 2 years ago
linking to #2053 - currently, any successful icedove build closes both tickets
Updated by bill-auger over 2 years ago
- Related to Bug #2053: [libre/icedove]: rebuild against new icu (x86_64) added
Updated by bill-auger about 2 years ago
the icedove in libre is still broken - are ppl happy with the one in libre-testing? - it would be good to promote it libre
Updated by bill-auger about 2 years ago
- Related to Bug #3034: icedove: XPCOMGlueLoad error for file /usr/lib/icedove/libxul.so added
Updated by dllud about 2 years ago
are ppl happy with the one in libre-testing?
Not so much. At least for me. The one in libre-testing was built almost 1 year ago. It has the same dependency problems. For instance:
cannot resolve "libvpx.so=6-64", a dependency of "icedove"
Updated by infertux about 2 years ago
bill-auger wrote:
the icedove in libre is still broken - are ppl happy with the one in libre-testing? - it would be good to promote it libre
I've been happy with it. It just needs a rebuild to update libvpx.so
and it will be fine to promote it to libre
IMO.
Updated by bill-auger about 2 years ago
i have tried to rebuild it several times this week; with no
success yet
Updated by Marx.FelipeForte about 2 years ago
Can confirm the same issue and error dialog, 2022-04-09
Updated by bill-auger about 1 year ago
just an update:
to be clear WRT the ticket title, libffi is/was a symptom, not the problem - the blocker of this ticket is that icedove has failed to compile since v78 was current - FWIW, ive tried several releases that i did not bother to comment about
tried again, at v102.9 - this time, it compiles and runs; but the program is missing all texts - the branding may need re-working now
Updated by bill-auger about 2 months ago
as a concession, i have packaged the trisquel icedove binaries for parabola in PCR - icedove - the package name is 'icedove-bin', if people want to use it
i am keeping this ticket 'open'; because the is not an ideal solution
binary packages are generally not acceptable
icedove has been unable to build for a long time though
libre/icedove still works; but is quite out-of-date
ideally, let's fix libre/icedove and delete pcr/icedove-bin
Updated by bill-auger about 1 month ago
- Has duplicate Packaging Request #3476: Outdated Icedove added
Updated by bill-auger about 1 month ago
- Has duplicate Bug #3481: [icedove] rebuild against latest libffi added
Updated by bill-auger about 1 month ago
there is icedove 115.9.0 in libre-testing - can people try it and report your experience? - if it has no problems, it can be promoted to libre
# pacman -U https://repo.parabola.nu/pool/parabola/icedove-1:115.9.0-1.parabola1-x86_64.pkg.tar.zst
Updated by bill-auger 27 days ago
Thanks a lot bill-auger! I've been trying it for the day and everything seems to work fine. I guess you can promote it to libre.
FWIW, oaken-source completed it; but glad it works finally - i had this one on
the shelf for far too long
Updated by oaken-source 26 days ago
dllud wrote:
Faced one issue: contacts were not automatically moved into the new address book format (SQLite).
Had to manually import abook.mab (personal address book) and history.mab (collected addresses) with Tools > Import.
Would you be able to write a short guide on this issue how to fix it manually? We could submit a news item with that guide along with the release of icedove to libre.
Updated by dllud 25 days ago
A news item as this should suffice:
icedove 115.9.0 update may require manual intervention to recover address books¶
Icedove 115.9.0 brings in a new address book format based on SQLite (.sqlite), replacing the old Mork format (.mab).
Upon update, if your address books turn out empty, you may recover your contacts by manually importing abook.mab (personal address book) and history.mab (collected addresses) with Tools > Import > Import from File. Both these files are located at your Icedove profile directory (e.g. ~/.icedove/xxxxxxxx.default/history.mab).
Updated by dllud 22 days ago
Yup, seems to work fine and all those issues are either solved or non-applicable now.
#2958 no longer applies, Thunderbird now has built-in OpenPGP support. icedove-extension-enigmail is now incompatible and should be removed from libre when you move the new icedove.
I hope icedove is a bit easier to build nowadays, hopefully you can update it more often from now on.
Updated by bill-auger 22 days ago
i just remembered 'icedove-extension-enigmail' - that is incompatible with the latest icedove - icedove now includes that feature by default - so 'icedove-extension-enigmail' can be deleted
also, im not sure what to do about the language packs - ordinarily those need to be rebuilt along with the client - i have not been making them for iceweasel because they are available in the GUI now - maybe icedove has the same ability and we could drop the language packs
Updated by bill-auger 22 days ago
- Related to deleted (Bug #2053: [libre/icedove]: rebuild against new icu (x86_64))
Updated by bill-auger 6 days ago
deleted icedove-extension-enigmail and icedove-bin - moved icedove 115 to libre
i closed the related tickets, but leaving this one open, because the i686, armv7h, and nonprism counterparts are still the old version