You are not logged in.

#1 2021-10-20 11:05:24

Square252
Member
Registered: 2014-04-15
Posts: 4

libffi update breaks multiple packages (again...)

Hi there,

The recent change in libffi seems to have broken my system...

Since installing the update cinnamon and terminator are not working anymore. Cinnamon is very obvious and directly errors out with:

cinnamon: error while loading shared libraries: libffi.so.7: cannot open shared object file: No such file or directory

Terminator was a little bit more complicated but i narrowed it also down to the missing libffi dependancy:

You need to install the python bindings for gobject, gtk and pango to run Terminator.

I had this the last time with the removal of libffi.so.6 if i remember correctly, so there seems to be something i'm doing wrong...
Anything i missed after the update? Reinstalling the packages from an up-to-date repo doesn't seem to be enough to fix these problems...

Offline

#2 2021-10-20 11:20:52

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,327

Re: libffi update breaks multiple packages (again...)

You probably have a custom version of libffi.so.7  or a dependant library somewhere that shadows the in repo version. What's the output of

lddtree $program

from an affected binary? lddtree needs pax-utils installed. Did you replace any "lower" level libraries with AUR packages/-git versions?

Possible candidates a broken python environment due to misuse of pip/conda or invalid glib2 versions.

Last edited by V1del (2021-10-20 11:24:12)

Offline

#3 2021-10-20 14:35:24

AyrSales
Member
Registered: 2021-10-20
Posts: 1

Re: libffi update breaks multiple packages (again...)

Hello, this is the problem?
https://github.com/archlinux/svntogit-p … bffi/trunk


temporary fix;
sudo pacman -U https://archive.archlinux.org/packages/ … kg.tar.zst

Last edited by AyrSales (2021-10-20 14:41:06)

Offline

#4 2021-10-20 15:08:42

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,327

Re: libffi update breaks multiple packages (again...)

That's a partial update and will likely further break your system.

Offline

#5 2021-10-20 20:30:35

chris-allen
Member
Registered: 2021-10-20
Posts: 4

Re: libffi update breaks multiple packages (again...)

I have two machines with similar arch setups. Both use cinnamon. I updated one of these systems this morning and cinnamon fails looking for libffi.so.7 just as @Square252 describes.

I think @V1del is on to something with the mention of glib2 as a potential culprit.

Comparing the output of pacman -Q glib2 on both machines yields:

Busted machine:

glib2 2.70.0-2

Working machine:

glib2 2.70.0-1

Comparing the relevant output of lddtree /usr/bin/cinnamon yields:

Busted machine:

libcjs.so.0 => /usr/lib/libcjs.so.0
    libffi.so.7 => None
--
libwayland-client.so.0 => /usr/lib/libwayland-client.so.0
    libffi.so.8 => /usr/lib/libffi.so.8

Working machine:

libcjs.so.0 => /usr/lib/libcjs.so.0
    libffi.so.7 => /usr/lib/libffi.so.7

I tried downgrading glib2 using the pacman cache, but:

$ sudo pacman -U /var/cache/pacman/pkg/glib2-2.70.0-1-x86_64.pkg.tar.zst
loading packages...
warning: downgrading package glib2 (2.70.0-2 => 2.70.0-1)
resolving dependencies...
warning: cannot resolve "libffi.so=7-64", a dependency of "glib2"
:: The following package cannot be upgraded due to unresolvable dependencies:
    glib2
:: Do you want to skip the above package for thie upgrade? [y/N] ^C

I'd love to learn the proper way to resolve this. I'm assuming it's not kosher to have two different versions of libffi installed. Any ideas?

Offline

#6 2021-10-21 01:18:43

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,729

Re: libffi update breaks multiple packages (again...)

chris-allen wrote:

Busted machine:

libcjs.so.0 => /usr/lib/libcjs.so.0
    libffi.so.7 => None

So your problem is with libcjs. Pacman -F tells me that file is from the cjs package in community, which was already rebuilt. What version do you have installed? This sounds like a partial update.

Offline

#7 2021-10-21 01:29:45

chris-allen
Member
Registered: 2021-10-20
Posts: 4

Re: libffi update breaks multiple packages (again...)

@Scimmia It appears both machines (working / busted) report the same cjs version:

$ pacman -Q cjs
cjs 5.0.1-1

Offline

#8 2021-10-21 01:33:19

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,729

Re: libffi update breaks multiple packages (again...)

Which is an old version, and a partial update. There's no way that's the actual version on the working machine, that would be pkgrel 2, pkgrel 1 wouldn't have given you the lddtree output you posted earlier.

Offline

#9 2021-10-21 01:59:52

chris-allen
Member
Registered: 2021-10-20
Posts: 4

Re: libffi update breaks multiple packages (again...)

Okay, so my issue turned out to be that the top mirror in my /etc/pacman.d/mirrorlist wasn't pulling in the latest community packages neutral

For those interested, I disabled the following mirror:

http://arch.mirror.square-r00t.net/$repo/os/$arch

Switching to another mirror started pulling in cjs 5.0.1-2 and things cleared right up. Thanks so much for everyone's help! I learned some valuable lessons.

Offline

#10 2021-10-21 06:37:25

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 77,438

Re: libffi update breaks multiple packages (again...)

https://archlinux.org/packages/community/any/reflector/

Please always remember to mark resolved threads by editing your initial posts subject - so others will know that there's no task left, but maybe a solution to find.
Thanks.

Offline

#11 2021-10-25 13:01:55

zzzc18
Member
Registered: 2021-10-25
Posts: 2

Re: libffi update breaks multiple packages (again...)

If u want a quick work around u may try conda, which won't break ur system

conda install libffi==3.4.2 # or any version u need

Then

export LD_LIBRARY_PATH=lib_folder_of_your_conda_env:$LD_LIBRARY_PATH

Last edited by zzzc18 (2021-10-25 13:02:34)

Offline

#12 2021-10-25 13:05:38

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,729

Re: libffi update breaks multiple packages (again...)

zzzc18 wrote:

If u want a quick work around u may try conda, which won't break ur system

conda install libffi==3.4.2 # or any version u need

Then

export LD_LIBRARY_PATH=lib_folder_of_your_conda_env:$LD_LIBRARY_PATH

Don't do that. Avoiding the issue instead of fixing it will just cause more problems later.

Offline

#13 2021-10-25 13:09:46

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,327

Re: libffi update breaks multiple packages (again...)

WTF? This is such a bad piece of advice that I'm inclined to bin it.

Doing things like the above is the entire inherent reason for why you are in this situation in the first place, whatever you do, do not follow the above, that's just plain insanity.

Last edited by V1del (2021-10-25 13:10:05)

Offline

#14 2021-10-25 16:50:21

tzhuang
Member
Registered: 2017-05-23
Posts: 45

Re: libffi update breaks multiple packages (again...)

I use pyenv to manage my python versions and virtual envs. I ran into this issue and simply had to rebuild the python version in question (

pyenv install 3.7.4

in my case) presumably because it was linking against and older version of libffi when it previously built. Hopefully saves someone with the same issue some time.

Offline

#15 2021-10-26 11:01:21

zzzc18
Member
Registered: 2021-10-25
Posts: 2

Re: libffi update breaks multiple packages (again...)

zzzc18 wrote:

If u want a quick work around u may try conda, which won't break ur system

conda install libffi==3.4.2 # or any version u need

Then

export LD_LIBRARY_PATH=lib_folder_of_your_conda_env:$LD_LIBRARY_PATH

I mean this is a temporary work around, and is easy to undo when u want as conda's env can be easily removed or reinstalled.

The newest Manjaro (downloaded 2021/10/25) will face the issue of missing libffi.so.8 when building packages with yay (makepkg), and u can't simply reinstall or update libffi to solve it. From my point of view, this is something wrong caused by manjaro or my pacman source.

Hope this helps those who just want a quick solution.

Offline

#16 2021-10-26 12:11:09

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,327

Re: libffi update breaks multiple packages (again...)

Manjaro isn't supported here and bugs in this space wouldn't surprise me. The only way you can have this issue on Arch right now is if you have a logical inconsistency on your system that you should properly fix instead of throwing temporary "fixes" around that are all but guaranteed to break horribly somewhere down the line and you wouldn't know why something broke.

Offline

#17 2021-10-26 12:45:18

seth
Member
From: Won't reply 2 private help req
Registered: 2012-09-03
Posts: 77,438

Re: libffi update breaks multiple packages (again...)

I mean this is a temporary work around

No, it's a dumb idea that you should scratch from your head as fast as possible.

just want a quick solution

Just like https://www.youtube.com/watch?v=XPpJcnEoijU

missing libffi.so.8 when building packages with yay (makepkg)

Only if a package *explicitly* links that *very* release of the library - what's rather rare.
=> Name an actual package.
Also the only way libffi.so.8 *missing* is if you don't have libffi 3.4.2 which is in the repos since July 17th - it's also the direct opposite of the topic of this thread.

If you've actual build or other issues on archlinux (and I mean "Arch-Archlinux", not "Manjaro-thatsnotarchlinux") open a new thread, and post the build errors.

Offline

Board footer

Powered by FluxBB