# Problemi con Revdep-rebuild

## Pes88

Ciao a tutti! 

Ho un piccolo problema con revdep-rebuild, perché da un bel po di tempo ogni volta che lancio questo programma per verificare la consistenza delle librerie, mi riemerge i driver nvidia a causa della libreria libXvMC.so.1.

Ho provato ad installare nuovamente sia la libreria sia i driver, anche usando versioni differenti , ma non è mai cambiato nulla ... 

Poi ultimante ho installato vmware, e anche questo mi chiede di continuo di verificare la consistenza delle sue librerie, che io ho ricompilato, ma anche questa volta non è cambiato nulla...  :Sad: 

posto l'output di revdep-rebuild : 

```

* Configuring search environment for revdep-rebuild

 * Checking reverse dependencies

 * Packages containing binaries and libraries broken by a package update

 * will be emerged.

 * Collecting system binaries and libraries

 * Generated new 1_files.rr

 * Collecting complete LD_LIBRARY_PATH

 * Generated new 2_ldpath.rr

 * Checking dynamic linking consistency

[ 57% ]  *   broken /usr/lib64/libXvMCNVIDIA.so.260.19.12 (requires libXvMC.so.1)

[ 90% ]  *   broken /usr/lib64/vmware-installer/1.1/lib/libconf/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-jpeg.so (requires libjpeg.so.62)

[ 91% ]  *   broken /usr/lib64/vmware-installer/1.1/sopython/libpy25.so (requires libpython2.5.so.1.0)

[ 92% ]  *   broken /usr/lib64/vmware/lib/libcurl.so.3/libcurl.so.3 (requires libcrypto.so.0.9.7

libssl.so.0.9.7)

[ 93% ]  *   broken /usr/lib64/vmware/libconf/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-jpeg.so (requires libjpeg.so.62)

[ 100% ]                 

 * Generated new 3_broken.rr

 * Assigning files to packages

 *   /usr/lib64/libXvMCNVIDIA.so.260.19.12 -> x11-drivers/nvidia-drivers

 *  !!! /usr/lib64/vmware-installer/1.1/lib/libconf/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-jpeg.so not owned by any package is broken !!!

 *   /usr/lib64/vmware-installer/1.1/lib/libconf/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-jpeg.so -> (none)

 *  !!! /usr/lib64/vmware-installer/1.1/sopython/libpy25.so not owned by any package is broken !!!

 *   /usr/lib64/vmware-installer/1.1/sopython/libpy25.so -> (none)

 *  !!! /usr/lib64/vmware/lib/libcurl.so.3/libcurl.so.3 not owned by any package is broken !!!

 *   /usr/lib64/vmware/lib/libcurl.so.3/libcurl.so.3 -> (none)

 *  !!! /usr/lib64/vmware/libconf/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-jpeg.so not owned by any package is broken !!!

 *   /usr/lib64/vmware/libconf/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-jpeg.so -> (none)                                                                                                                    

 * Generated new 4_raw.rr and 4_owners.rr                                                                                                                                                                      

 * Cleaning list of packages to rebuild                                                                                                                                                                        

 * Generated new 4_pkgs.rr                                                                                                                                                                                     

 * Assigning packages to ebuilds                                                                                                                                                                               

 * Generated new 4_ebuilds.rr                                                                                                                                                                                  

 * Evaluating package order                                                                                                                                                                                    

 * Generated new 5_order.rr                                                                                                                                                                                    

 * All prepared. Starting rebuild                                                                                                                                                                              

emerge --oneshot --pretend  x11-drivers/nvidia-drivers:0                                                                                                                                                       

                                                                                                                                                                                                               

These are the packages that would be merged, in order:                                                                                                                                                         

                                                                                                                                                                                                               

Calculating dependencies... done!                                                                                                                                                                              

[ebuild   R   ] x11-drivers/nvidia-drivers-260.19.12                                                                                                                                                           

 * Now you can remove -p (or --pretend) from arguments and re-run revdep-rebuild. 

```

Anche se ricompilo tutto l'output rimane invariato...   :Crying or Very sad:   :Crying or Very sad:   :Crying or Very sad: 

Poi ho notato che ottengo un errore dovuto sempre a libXvMC.so.1 anche quando uso env-update 

```

ocalhost giuseppe # env-update 

>>> Regenerating /etc/ld.so.cache...

/sbin/ldconfig: libraries libXvMC.so.1 and libXvMC.so.1.0.0 in directory /usr/lib have same soname but different type.

```

Le librerie presenti sono :

```

ls libXv*

libXv.a   libXv.so    libXv.so.1.0.0  libXvMC.so    libXvMC.so.1.0.0  libXvMCNVIDIA.so            libXvMCNVIDIA_dynamic.so.1  libXvMCW.so    libXvMCW.so.1.0.0

libXv.la  libXv.so.1  libXvMC.la      libXvMC.so.1  libXvMCNVIDIA.a   libXvMCNVIDIA.so.260.19.12  libXvMCW.la                 libXvMCW.so.1  libXvMc.so.1

```

Dove libXvMC.so.1 --> libXvMc.so.1--> /usr/lib32/libXvMC.so.1.   :Shocked:   :Shocked:   :Shocked: 

Uso un sistema a 64 bit! 

Il problema potrebbe essere dovuto a qualche link simbolico non funzionante??

Per completare posto emerge --info :

```

Portage 2.1.8.3 (default/linux/amd64/10.0/desktop, gcc-4.4.4, glibc-2.11.2-r3, 2.6.35-zen2 x86_64)

=================================================================

System uname: Linux-2.6.35-zen2-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_4800+-with-gentoo-1.12.14

Timestamp of tree: Thu, 18 Nov 2010 07:00:01 +0000

app-shells/bash:     4.1_p7

dev-java/java-config: 2.1.11-r1

dev-lang/python:     2.6.5-r3, 3.1.2-r4

dev-util/cmake:      2.8.1-r2

sys-apps/baselayout: 1.12.14-r1

sys-apps/sandbox:    2.3-r1

sys-devel/autoconf:  2.13, 2.65-r1

sys-devel/automake:  1.8.5-r3, 1.9.6-r3, 1.10.3, 1.11.1

sys-devel/binutils:  2.20.1-r1

sys-devel/gcc:       4.4.4-r2

sys-devel/gcc-config: 1.4.1

sys-devel/libtool:   2.2.10

sys-devel/make:      3.81-r2

virtual/os-headers:  2.6.30-r1

ACCEPT_KEYWORDS="amd64"

ACCEPT_LICENSE="* -@EULA PUEL vmware"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-O2 -pipe -march=native"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo"

CXXFLAGS="-O2 -pipe -march=native"

DISTDIR="/usr/portage/distfiles"

FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"

GENTOO_MIRRORS="http://distfiles.gentoo.org"

LDFLAGS="-Wl,--hash-style=gnu,-O1 -Wl,--as-needed"

LINGUAS="it"

MAKEOPTS="-j3"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY="/var/lib/layman/php /var/lib/layman/vmware /var/lib/layman/viralex /var/lib/layman/mio"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="X a52 aac acl acpi alsa amd64 berkdb bluetooth branding bzip2 cairo cdr cli consolekit cracklib crypt cxx dbus dri dts dvd dvdr emboss encode exif fam firefox flac fortran gdbm gif gpm hal iconv ipv6 jpeg jpg kde lcms ldap libnotify mad mikmod mmx mng modules mp3 mp4 mpeg mudflap multilib ncurses nls nptl nptlonly nvidia ogg opengl openmp pam pango pcre pdf perl png ppds pppd python qt3support qt4 readline sdl session spell sse sse2 ssl startup-notification svg symlink sysfs tcpd tiff truetype unicode usb vorbis x264 xcb xml xorg xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="it" PHP_TARGETS="php5-2" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

```

----------

## ciro64

1) Controllerei che x11-drivers/nvidia-drivers non sia presente in /var/lib/portage/world

2) Pulirei con

```

# find /var/cache/revdep-rebuild -name *.rr -delete

# lafilefixer --justfixit
```

Quindi riproverei il revdep-rebuild

----------

## Pes88

 *Quote:*   

> 
> 
>  Controllerei che x11-drivers/nvidia-drivers non sia presente in /var/lib/portage/world 
> 
> 

 

E' presente!!! Ma non so che serva quel file???   :Embarassed:   :Embarassed:   :Embarassed: 

Lo devo eliminare da quel file?? 

Non so neanche a che serva lafilefixer... Non c'è l'ho neanche installato...

----------

## grifone87

 *Pes88 wrote:*   

>  *Quote:*   
> 
>  Controllerei che x11-drivers/nvidia-drivers non sia presente in /var/lib/portage/world 
> 
>  
> ...

 

Il file /var/lib/portage/world contiene tutte le applicazioni esplicitamente installate nel sistema e non le dipendenze. Lo puoi leggere qua (nel sottoparagrafo aggiornare il software). Non penso che tu debba toccare quel file, però prima esegui i comandi scritti nel post precedente. Potrebbero bastare a risolvere il problema (in particolare lafilefixer).

 *Quote:*   

>  Non so neanche a che serva lafilefixer... Non c'è l'ho neanche installato...

 

Installalo. Spiegazione di lafilefixer tratta da qui https://forums.gentoo.org/viewtopic-t-784871-start-0.html.

 *Quote:*   

> As the name says, it fixes *.la files. These are files used by libtool. More precisely, if you install library B which in turn uses library A, then library B will store this information in an *.la file. Now if something links against library B, it uses this information. If the information stored in the *.la file is not up-to-date with your actual system, this linking against library B can fail. Typically, you will see a (hard to understand) error during emerge when the library should be linked. 

 

lafilefixer sistema questi file.

----------

## Pes88

Ho eseguito i comandi che mi avete nominato, ma non è cambiato nulla....  :Sad: 

l'output di lafilefixer è  molto lungo quindi non lo posto, sono una serie di librerie....  Lo lanciato un paio di volte e l'output è rimasto invariato! ma devo ricompilare tutti quei pacchetti?

----------

## grifone87

 *Pes88 wrote:*   

> L'ho lanciato un paio di volte e l'output è rimasto invariato!

 

Questo è molto strano: in teoria il secondo lancio non dovrebbe produrre alcun output perché una volta modificati i file indicati, gli errori dovrebbero essere corretti.

----------

## Pes88

 *Quote:*   

> 
> 
> Pes88 ha scritto:
> 
> L'ho lanciato un paio di volte e l'output è rimasto invariato!
> ...

 

 :Embarassed:   :Embarassed:   :Embarassed:   :Embarassed:   :Embarassed:   :Embarassed:   :Embarassed:   :Embarassed:   :Embarassed: 

Molto probilmente non ho capito il funzionamento di lafilefixer.. 

Ho lanciato questo comando : lafilefixer --justfixit , e ottengo una serie di librerie, posto una parte dell'output.. 

```

usr/lib64/libdb_cxx-4.7.la already clean, skipping update.

/usr/lib64/libggzcore.la already clean, skipping update.

/usr/lib64/libicalvcal.la already clean, skipping update.

/usr/lib64/libeggdbus-1.la already clean, skipping update.

/usr/lib64/libgthread-2.0.la already clean, skipping update.

/usr/lib64/libsoup-gnome-2.4.la already clean, skipping update.

/usr/lib64/libXmuu.la already clean, skipping update.

/usr/lib64/gio/modules/libgiofam.la already clean, skipping update.

/usr/lib64/gio/modules/libgioremote-volume-monitor.la already clean, skipping update.

/usr/lib64/gio/modules/libgvfsdbus.la already clean, skipping update.

/usr/lib64/libffi.la already clean, skipping update.

/usr/lib64/libICE.la already clean, skipping update.

/usr/lib64/libpolkit-dbus.la already clean, skipping update.

/usr/lib64/libxcb-sync.la already clean, skipping update.

/usr/lib64/libcairomm-1.0.la already clean, skipping update.

/usr/lib64/libvdpau_trace.la already clean, skipping update.

/usr/lib64/libxcb.la already clean, skipping update.

/usr/lib64/libXRes.la already clean, skipping update.

/usr/lib64/libgcrypt.la already clean, skipping update.

/usr/lib64/librsvg-2.la already clean, skipping update.

/usr/lib64/libgettextlib.la already clean, skipping update.

/usr/lib64/libxcb-reply.la already clean, skipping update.

/usr/lib64/libxcb-randr.la already clean, skipping update.

/usr/lib64/libpangoft2-1.0.la already clean, skipping update.

/usr/lib64/libijs.la already clean, skipping update.

```

In verita sono molte di piu.. 

Devo riemergere tutti i pacchetti che mi segnala?

 *Quote:*   

> 
> 
> Questo è molto strano: in teoria il secondo lancio non dovrebbe produrre alcun output perché una volta modificati i file indicati, gli errori dovrebbero essere corretti
> 
> 

 

L'ho lanciato 4 volte di fila, e il risultato è sempre stato lo stesso...   :Shocked:   :Shocked:   :Shocked: 

----------

## Onip

basta una volta sola. ogni volta lafilefixer elenca i file .la che trova (ecco perchè l'output è lungo) e dice se è già sistemato (skipping) oppure se te lo ha corretto.

----------

## grifone87

 *Pes88 wrote:*   

>  *Quote:*   
> 
> Pes88 ha scritto:
> 
> L'ho lanciato un paio di volte e l'output è rimasto invariato!
> ...

 

 :Wink: 

 *Pes88 wrote:*   

> 
> 
> Molto probilmente non ho capito il funzionamento di lafilefixer.. 
> 
> Ho lanciato questo comando : lafilefixer --justfixit , e ottengo una serie di librerie, posto una parte dell'output.. 
> ...

 

Errore mio!

Effettivamente l'output di lafilefixer è corretto, non è strano per niente: mi sono sbagliato perché io filtro l'output di lafilefixer con grep per vedere solo i file aggiornati.

Revdep-rebuild continua a dare problemi?

----------

## Pes88

Si, ci sono sempre gli stessi problemi...  :Sad:   :Sad: 

Posto l'output della ricompilazione dei driver : 

```

 * QA Notice: Found an absolute symlink in a library directory:

 *            usr/lib64/libnvcuvid.so -> /usr/lib64/libnvcuvid.so.260.19.21

 *            It should be a relative symlink if in the same directory

 *            or a linker script if it crosses the /usr boundary.

 * QA Notice: Found an absolute symlink in a library directory:

 *            usr/lib64/libnvidia-cfg.so -> /usr/lib64/libnvidia-cfg.so.260.19.21

 *            It should be a relative symlink if in the same directory

 *            or a linker script if it crosses the /usr boundary.

>>> Installing (1 of 1) x11-drivers/nvidia-drivers-260.19.21

 * Updating module dependencies for 2.6.35-zen2 ...                                                                                                    [ ok ]

 * Removing x11-drivers/nvidia-drivers-260.19.21 from moduledb.

Switching to nvidia OpenGL interface... done

/sbin/ldconfig: libraries libXvMC.so.1 and libXvMC.so.1.0.0 in directory /usr/lib have same soname but different type.

 * Updating module dependencies for 2.6.35-zen2 ...                                                                                                    [ ok ]

 * Adding module to moduledb.

Switching to nvidia OpenGL interface... done

 * You must be in the video group to use the NVIDIA device

 * For more info, read the docs at

 * http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6

 * 

 * This ebuild installs a kernel module and X driver. Both must

 * match explicitly in their version. This means, if you restart

 * X, you must modprobe -r nvidia before starting it back up

 * 

 * To use the NVIDIA GLX, run "eselect opengl set nvidia"

 * 

 * NVIDIA has requested that any bug reports submitted have the

 * output of /usr/bin/nvidia-bug-report.sh included.

 * 

 * To work with compiz, you must enable the AddARGBGLXVisuals option.

 * 

 * If you are having resolution problems, try disabling DynamicTwinView.

 * 

[b]/sbin/ldconfig: libraries libXvMC.so.1 and libXvMC.so.1.0.0 in directory /usr/lib have same soname but different type.[/b]

```

Puo essere un problema dovuto al fatto che libXvMC.so.1 punta ad una libreria a 32 bit mentre libXvMC.s0.1.0.0 è una libreria a 64 bit??? 

Perchè  libXvMC.so.1 --> libXvMc.so.1--> /usr/lib32/libXvMC.so.1--> /usr/lib32/libXvMC.so.1.0.0 

```

file /usr/lib32/libXvMC.so.1.0.0 

/usr/lib32/libXvMC.so.1.0.0: [b]ELF 32-bit[/b] LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped

```

Mentre : 

```
file /usr/lib/libXvMC.so.1.0.0 

libXvMC.so.1.0.0: [b]ELF 64-bit [/b]LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped

```

Uso un sistema a 64 bit multilib....  :Smile: 

----------

## ago

[ OT ]

Con la nuova versione di portage, attualmente in ~ ( ovviamente non parlo della  2.2 ma di 2.1.9.24 ) non c'è più bisogno di lanciare lafilefixer, fixa lui in automatico.

man make.conf /fixlafiles 

 :Wink: 

[ /OT ]

----------

## Pes88

Ho provato un po di tutto!! Ho cambiato i link simbolici ho copiato le librerie fisicamente nella directory, ma non è mai cambiato nulla....

----------

## cloc3

 *Pes88 wrote:*   

> 
> 
> Poi ultimante ho installato vmware, e anche questo mi chiede di continuo di verificare la consistenza delle sue librerie

 

fin qua si può anche capire, perché vmware utilizza la versione vecchia di openssl (0.*), mentre il tuo sistema è passato alla 1.*.

ci sono delle discussioni nel forum che trattano di quel problema da diversi punti di vista.

ma è brutto trovarsi a curare contemporaneamente due problemi analoghi, perché si finisce per fare confusione.

nel mio sistema:

```

rhserver ~ # qfile libXvMC.so.1

x11-libs/libXvMC (/usr/lib64/libXvMC.so.1)

```

da te, qual è il pacchetto che contiene la versione a 32 bit?

----------

## Pes88

Si! Un problema per volta... 

qfile libXvMC.so.1 

```

 app-emulation/emul-linux-x86-xlibs (/usr/lib32/libXvMC.so.1)

x11-libs/libXvMC (/usr/lib64/libXvMC.so.1)

```

Quindi il problema è dovuto al conflitto di questi due file??

equery d emul-linux-x86-xlibs

```

[ Searching for packages depending on emul-linux-x86-xlibs... ]

app-emulation/emul-linux-x86-gtklibs-20100915 (~app-emulation/emul-linux-x86-xlibs-20100915)

app-emulation/emul-linux-x86-medialibs-20100915 (~app-emulation/emul-linux-x86-xlibs-20100915)

app-emulation/emul-linux-x86-opengl-20100915 (>=app-emulation/emul-linux-x86-xlibs-20100611)

sys-devel/gcc-4.4.4-r2 (amd64 & multilib & gcj? app-emulation/emul-linux-x86-xlibs)

www-plugins/nspluginwrapper-1.3.0 (app-emulation/emul-linux-x86-xlibs)

x11-drivers/nvidia-drivers-260.19.21 (multilib? app-emulation/emul-linux-x86-xlibs)

```

equery d libXvMC

```

[ Searching for packages depending on libXvMC... ]

media-libs/xine-lib-1.1.18.1 (xvmc? x11-libs/libXvMC)

x11-drivers/nvidia-drivers-260.19.21 (x11-libs/libXvMC)

```

Non credo di poter disinstallare nessuno dei due file... Visto quali sono i programmai che dipendono da loro... O sbaglio??

----------

