[aur-general] Rebuild community/skype-call-recorder

Evangelos Foutras foutrelis at gmail.com
Fri Jul 16 13:52:46 EDT 2010


On 16/07/10 19:52, Michael Witten wrote:
> The `skype-call-recorder' package in the `community' repository simply
> needs to be rebuilt.
>
> The current binary fails to run because it cannot load `libpng12'
> (which no longer seems to exist officially and is indeed not required
> by skype-call-recorder).

Hello there. :)

It appears that you are using a package of skype-call-recorder built 
from the AUR before skype-call-recorder was moved to [community] and 
also before --as-needed was added to our LDFLAGS.

We had a libpng rebuild at the beginning of this year, but 
skype-call-recorder wasn't in the list because it was built with 
--as-needed and as such, it didn't depend on libpng directly (which is a 
dependency of Qt).

Quite a tricky timing issue. If --as-needed was introduced either before 
you built the package from the AUR or after the libpng rebuild was 
complete, it wouldn't have occurred. Well, I guess I could have bumped 
the pkgrel during the move to [community], but it didn't occur to me. :P

Since you've already rebuilt the package, the issue should be resolved.
Otherwise, you could do a `pacman -S skype-call-recorder' to remedy that.

> --------------------
>
> The following may be of interest to the developer of
> skype-call-recorder (who has been added to the Bcc list out of respect
> for a seemingly keen interest for remaining private).
>
> Interestingly, after rebuilding skype-call-recorder, the output of
> this command (which gives the direct shared library dependencies):
>
>   readelf -d `which skype-call-recorder` | awk -F'[][]' '/NEEDED/ {print $2}'
>
> went from this:
>
>    libmp3lame.so.0
>    libid3-3.8.so.3
>    libvorbisenc.so.2
>    libQtGui.so.4
>    libpng12.so.0
>    libSM.so.6
>    libICE.so.6
>    libXrender.so.1
>    libfreetype.so.6
>    libfontconfig.so.1
>    libXext.so.6
>    libX11.so.6
>    libQtDBus.so.4
>    libdbus-1.so.3
>    libQtXml.so.4
>    libQtNetwork.so.4
>    libssl.so.0.9.8
>    libQtCore.so.4
>    libz.so.1
>    libgthread-2.0.so.0
>    libglib-2.0.so.0
>    librt.so.1
>    libpthread.so.0
>    libdl.so.2
>    libstdc++.so.6
>    libm.so.6
>    libgcc_s.so.1
>    libc.so.6
>    libvorbis.so.0
>    libogg.so.0
>
> to this:
>
>   libmp3lame.so.0
>   libid3-3.8.so.3
>   libvorbisenc.so.2
>   libQtGui.so.4
>   libQtDBus.so.4
>   libQtNetwork.so.4
>   libQtCore.so.4
>   libstdc++.so.6
>   libm.so.6
>   libgcc_s.so.1
>   libc.so.6
>   libvorbis.so.0
>   libogg.so.0

This is thanks to the --as-needed flag that is passed to the linker (see 
the LDFLAGS variable in /etc/makepkg.conf).

> More interesting is that even some of these aren't actually direct
> dependencies; the output of this command:
>
>   ldd -u `which skype-call-recorder`
>
> is this:
>
>    Unused direct dependencies:
>    	
>    	/usr/lib/libmp3lame.so.0
>    	/usr/lib/libid3-3.8.so.3
>    	/usr/lib/libvorbisenc.so.2
>    	/usr/lib/libQtNetwork.so.4
>    	/lib/libm.so.6
>    	/usr/lib/libgcc_s.so.1
>    	/lib/libc.so.6
>    	/usr/lib/libvorbis.so.0
>
> For instance, I imagine that `libc' is listed as unused because
> skype-call-recorder is actually a C++ program that only depends
> directly on `libstdc++'.
>
> Perhaps the commands used to build skype-call-recorder can be cleaned up.

No idea why that is the case. :P

> Sincerely,
> Michael Witten



More information about the aur-general mailing list