You are not logged in.

#26 2008-03-27 16:59:49

shining
Pacman Developer
Registered: 2006-05-10
Posts: 2,043

Re: revdep-rebuild = find broken libs

brebs wrote:

I mean, who on Earth wants crappy fonts when they can compile cairo-ubuntu? (shameless plug)

I do.


pacman roulette : pacman -S $(pacman -Slq | LANG=C sort -R | head -n $((RANDOM % 10)))

Offline

#27 2008-03-27 20:28:16

phrakture
Arch Overlord
From: behind you
Registered: 2003-10-29
Posts: 7,879
Website

Re: revdep-rebuild = find broken libs

brebs wrote:

Dunno how Arch Linux has existed without such a checker, because such breakage occurs often, when libraries increment their soname. revdep-rebuild is an essential program in Gentoo. Binary distro users are spoiled rotten by having the recompilations done for them wink

Example:

ldd /usr/lib/libalpm.so
objdump -p /usr/lib/libalpm.so

We have such a tool, named "lddd". It is part of devtools. While it is not as expansive as your tool, it does the job.

Offline

#28 2008-03-27 20:58:35

aRcHaTe
Member
Registered: 2006-10-24
Posts: 644

Re: revdep-rebuild = find broken libs

brebs wrote:
aRcHaTe wrote:

missing libfluidsynth.so.1

Use the ldd and objdump commands to see for yourself easily, as I mentioned above.

$ find /usr/lib -name libfluid\*
/usr/lib/libfluidsynth.so.1
/usr/lib/libfluidsynth.so.1.1.2
/usr/lib/libfluidsynth.so
/usr/lib/libfluidsynth.a

Here's my /usr/local/sbin/compilepkg so people can see what "recompile the package" means - run it from within /var/abs/local/pkgname/

#!/bin/bash

# Posted at http://bbs.archlinux.org/viewtopic.php?pid=347363#p347363

if [[ -n ${1} ]] ; then
    pkgname=${1}
else
    pkgname=$(basename ${PWD})
fi

# Fix for tedious permissions problems
cd /var/abs/local/ && chown root:root * && chmod -s *

cd /var/abs/local/${pkgname}/ || exit 1
rm -rf src pkg && chown root:root * && chmod -s * && makepkg -fi --asroot || exit 1

# Find the correct pkg to check
f=$(ls -t *.pkg.tar.gz | head -n 1)
[[ -n ${f} ]] && namcap ${f}
namcap PKGBUILD

# Check .desktop files, if any
# http://freedesktop.org/wiki/Specifications/desktop-entry-spec
fl=$(ls -t *.desktop 2>/dev/null | head -n 1)
for f in $fl ; do
    desktop-file-validate --warn-kde ${f}
done

awesome man it work like a charm wink keep it up!!!!


Its a sick world we live in....

Offline

#29 2008-03-27 21:45:27

tigrmesh
IRC Op
From: Florida, US
Registered: 2007-12-11
Posts: 794

Re: revdep-rebuild = find broken libs

Hmm.

I ran lddd and findbrokenpkgs and got slightly different answers:

lddd wrote:

cat /tmp/lddd-script.U9fv/possible-rebuilds.txt
by alsa-plugins
by avahi
by firefox
by flac
by gnome-python-desktop
by libtiff
by pinentry
by python
by seahorse
by xulrunner

findbrokenpkgs wrote:

Recompile these packages:
alsa-plugins avahi flac gnome-python-desktop libgphoto2 libtiff pinentry python

Interesting.

Offline

#30 2008-03-27 22:34:48

bender02
Member
From: Germany
Registered: 2007-02-04
Posts: 1,328

Re: revdep-rebuild = find broken libs

brebs wrote:

I'll just add a link to this thread. The program cannot be expected to explain the subtleties of optional vs needed dynamic library linking. What would it say? "This could be right, or it could be wrong. Whaddyawannado?" wink

AFAICT, there's no way for the program to distinguish between "needed" and "optional" dependencies. If anyone knows a way, I'd love to hear it. So, it can only report the problems it sees.

Don't take me wrong, I understand very well what the script is doing (coming from gentoo originally smile It's just that under the impression of recent "veeery basic" questions cropping up in the forum, I felt like some disclaimer is needed.

brebs wrote:

The thing is, every distro screws up occasionally, and one of the ways they screw up is with the dependencies that this tool checks. Which makes this a useful tool. What's the usual response from the Arch devs? Use abs and compile yourself. And if you're using Testing/Unstable, or not doing a full update every time, you're on your own. They use that response, because it's the correct response. Individual users should be having some responsibility over their "linking". Users wouldn't last a month in Gentoo without such a responsibility.

Arch isn't a binary distro, it's a core of binary packages with lots of do-it-yourself packages in the AUR. I reckon that's the reality, for the sort of people who would be using/attracted to this distro. I mean, who on Earth wants crappy fonts when they can compile cairo-ubuntu? (shameless plug)

Sure, this is exactly what I love in arch. That I don't have to compile those huge beasts like firefox, gcc, openoffice, kde, gnome... but I can fix up things I need easily.

Offline

#31 2008-03-30 00:46:49

aRcHaTe
Member
Registered: 2006-10-24
Posts: 644

Re: revdep-rebuild = find broken libs

grep: writing output: Broken pipe

i now get this bug...any help?


Its a sick world we live in....

Offline

#32 2008-03-30 01:41:04

brebs
Member
Registered: 2007-04-03
Posts: 3,408

Re: revdep-rebuild = find broken libs

aRcHaTe wrote:

grep: writing output: Broken pipe

i now get this bug...any help?

No. You should know better, with your 461 posts. I'm not a mind-reader, funnily enough. Show a meaningful error message in context.

Offline

#33 2008-03-30 01:45:00

aRcHaTe
Member
Registered: 2006-10-24
Posts: 644

Re: revdep-rebuild = find broken libs

brebs wrote:
aRcHaTe wrote:

grep: writing output: Broken pipe

i now get this bug...any help?

No. You should know better, with your 461 posts. I'm not a mind-reader, funnily enough. Show a meaningful error message in context.

lool ur maybe right XD well i just ran findbrokenpkgs...and now this ocurres...ive reinstaled grep perl and the findbrokenpjgs dependencies..and still the same..

Collecting system binaries and libraries... done.
  (/home/sickhate/.findbrokenpkgs.1_files)

Collecting complete LD_LIBRARY_PATH... done.
  (/home/sickhate/.findbrokenpkgs.2_ldpath)

Checking dynamic linking consistency...
grep: writing output: Broken pipe
grep: writing output: Broken pipe
grep: writing output: Broken pipe
grep: writing output: Broken pipe
grep: writing output: Broken pipe
grep: writing output: Broken pipe

its seems grep just got screwd up tongue dunno how...but i certain had done something to them...well i recompiled textinfo and it ok now tongue hehe

Last edited by aRcHaTe (2008-03-30 01:53:46)


Its a sick world we live in....

Offline

#34 2008-06-14 06:34:49

clinx
Member
From: Muenster, Germany
Registered: 2008-04-13
Posts: 11

Re: revdep-rebuild = find broken libs

Hmm, I got this output:

[johannes@myhost ~]$ sudo sh check.sh
/home/johannes/.revdep-rebuild.0_env: line 1: /sbin: is a directory
/home/johannes/.revdep-rebuild.0_env: line 3: libodbc.so: command not found
/home/johannes/.revdep-rebuild.0_env: line 1: /sbin: is a directory
/home/johannes/.revdep-rebuild.0_env: line 3: libodbc.so: command not found
/home/johannes/.revdep-rebuild.0_env: line 1: /sbin: is a directory
/home/johannes/.revdep-rebuild.0_env: line 3: libodbc.so: command not found
/home/johannes/.revdep-rebuild.0_env: line 1: /sbin: is a directory
/home/johannes/.revdep-rebuild.0_env: line 3: libodbc.so: command not found

Checking reverse dependencies...


x1b[32;01mCollecting system binaries and libraries...x1b[0mcheck.sh: line 254: syntax error near unexpected token `('
check.sh: line 254: `   find $SEARCH_DIRS -type f ( -perm +u+x -o -name '*.so' -o -name '*.so.*' ) 2>/dev/null | sort | uniq >$LIST.0_files'
[johannes@myhost ~]$

Offline

#35 2009-03-15 20:07:46

Phlogiston
Member
Registered: 2009-02-14
Posts: 39

Re: revdep-rebuild = find broken libs

Thanks for the script.

Here is my output:

Assigning files to packages...
  /usr/bin/gtv -> smpeg
  /usr/bin/playdv -> libdv
  /usr/lib/kde4/kaddrbk_gnokii_xxport.so -> kdemod-kdepim-kaddressbook
  /usr/lib/kde4/plasma_appletscript_qedje.so -> kdemod-kdebase-workspace
  /usr/lib/kde4/plasma_package_ggl.so -> kdemod-kdebase-workspace
  /usr/lib/kde4/plasma_package_qedje.so -> kdemod-kdebase-workspace
  /usr/lib/kde4/plasma_scriptengine_ggl.so -> kdemod-kdebase-workspace
  /usr/lib/libavahi-qt3.so.1.0.2 -> avahi
  /usr/lib/vlc/misc/libnotify_plugin.so -> vlc
  /usr/lib/xine/plugins/1.25/xineplug_decode_image.so -> xine-lib
  /usr/lib/xine/plugins/1.25/xineplug_inp_vcd.so -> xine-lib
  /usr/lib/xmms/Input/libxmms-flac.so -> flac
  /usr/sbin/sensord -> lm_sensors
 done.
  (/root/.findbrokenpkgs.4_*)

Cleaning list of packages to rebuild... done.
  (/root/.findbrokenpkgs.5_packages)

Recompile these packages:
avahi flac kdemod-kdebase-workspace kdemod-kdepim-kaddressbook libdv lm_sensors smpeg vlc xine-lib

What do you suggest now? Should we file some bugs on specific packages?

Offline

#36 2009-03-15 20:22:33

Dieter@be
Forum Fellow
From: Belgium
Registered: 2006-11-05
Posts: 1,958
Website

Re: revdep-rebuild = find broken libs

I love revdep-rebuild on Gentoo.

that's all I have to say smile


< Daenyth> and he works prolifically
4 8 15 16 23 42

Offline

#37 2009-03-15 21:19:36

bender02
Member
From: Germany
Registered: 2007-02-04
Posts: 1,328

Re: revdep-rebuild = find broken libs

Phlogiston wrote:

What do you suggest now? Should we file some bugs on specific packages?

Do nothing. Most of the "broken libs" above are actually plugins/optional dependencies. Like the plasma things - you get a lot of them installed in kdebase-workspace, and some of them depend on specific packages to work (for instance qedje). But it's not at all necessary to have it installed for the other things in kdebase-workspace.

Offline

#38 2009-07-20 15:46:35

aurino
Member
From: berlin, germany
Registered: 2009-03-19
Posts: 4

Re: revdep-rebuild = find broken libs

I have fixed a few bugs and expanded the documentation available with the '-h' option.

As a result, there are way less fork+exec's for trivial things (eg. sed/awk replaced with native bash features) and maintenance should be much easier.

http://freenet-homepage.de/inode/files/ … kenpkgs.sh

Offline

#39 2011-05-08 00:44:58

akumixx
Member
Registered: 2011-05-03
Posts: 59

Re: revdep-rebuild = find broken libs

I dont know what to do when I recieve list of pkgs to recompile.

Offline

#40 2011-05-08 01:13:45

jasonwryan
Forum & Wiki Admin
From: .nz
Registered: 2009-05-09
Posts: 18,346
Website

Re: revdep-rebuild = find broken libs

akumixx - please don't necrobump: https://wiki.archlinux.org/index.php/Fo … Bumping.27

Open a new thread with some more specific about what, if any, issue you are trying to solve.

Closing


Arch + dwm   •   Mercurial repos  •   Github

Registered Linux User #482438

Offline

Board footer

Powered by FluxBB