# Error: circular dependencies

## GianGian2387

Buongiorno ragazzi,

sto installando gentoo su un secondo pc, quando vado a dare il comando:  *Quote:*   

> emerge --ask --verbose --update --deep --newuse @world

 , dopo aver selezionato il profilo ricevo questo messaggio:

 *Quote:*   

> Error: circular dependencies:
> 
> (media-libs/harfbuzz-2.8.1:0/0.9.18: :gentoo, ebuild scheduled for merge) depends on
> 
> (media-libs/freetype-2.10.:2/2: :gentoo, ebuild scheduled for merge) (build_slot_op)
> ...

 

Cercando su google ho provato ad inserire nel mio config le USE: -truetype e -harfbuzz, ma dando il comando emerge --oneshot freetype e anche harfbuzz il risultato non cambia, stessa cosa se provo a dre il comando emerge -avuDU

Avete idea di come possa fare per risolvere?

----------

## fedeliallalinea

Puoi postare per favore l'output completo del comando USE="-harfbuzz" emerge -1 media-libs/harfbuzz media-libs/freetype.

----------

## GianGian2387

 *Quote:*   

> !!!the slot conflict(s) show above invole package(s) which may need to
> 
> !!! be rebuilt in order to solve the conflict(s). however, the following
> 
> !!! package(s) cannot be rebuilt for the reason(s) shown:
> ...

 

se do etc-update mi dice che non rileva nulla

----------

## fedeliallalinea

Sei sicura che sia tutto l'output che ritorna il comand USE="-harfbuzz" emerge -1pv media-libs/harfbuzz media-libs/freetype?

----------

## GianGian2387

Questa è la parte finale, carica delle cose ma non riesco a leggerle perché non mi fa scorrere tutto

----------

## fedeliallalinea

 *GianGian2387 wrote:*   

> Questa è la parte finale, carica delle cose ma non riesco a leggerle perché non mi fa scorrere tutto

 

Prova ad usare wgetpaste

----------

## GianGian2387

wgetpaste l'ho installato, quando però provo a dare il comando he mi hai indicato te o emerge --ask --verbose --update --deep --newuse @world mi restituisce sempre lo stesso errore di prima

----------

## fedeliallalinea

Dai il comando

```
$ wgetpaste -c 'USE="-harfbuzz" emerge -1pv media-libs/harfbuzz media-libs/freetype'
```

che dovrebbe ridarti un url da postare sul forum.

----------

## GianGian2387

http://dpaste.com/CLVGPKELB

----------

## fedeliallalinea

Prova con il comando proposto da toralf in questo post

----------

## GianGian2387

Il comando che mi hai suggerito è partito, appena ha finito, ho ridato: emerge --ask --verbose --update --deep --newuse @world

e ho ricevuto nuovamente lo stesso errore...

----------

## fedeliallalinea

Poi postare ore l'ouput del comando wgetpaste -c 'emerge -uUDp @world '?

----------

## GianGian2387

Http://dpaste.com/HDZ7QMMVE

----------

## fedeliallalinea

Ok prova con il comando

```
USE="-X -cairo -glib -graphite -harfbuzz -icu -introspection -truetype" emerge media-libs/freetype media-libs/harfbuzz x11-libs/cairo
```

----------

## GianGian2387

The following USE Chang ed are necessary to proceed:

Media-libs/mesa-21.1.4 X

Media-libs/libglvnd-1.3.3 X

Media-libs/harfbuzz-2.8.1

Se aggiungo al comando le prime 2 librerie:

Restano solo media-libs/mesa e harfbuzz

----------

## fedeliallalinea

Prova l'ultimo comando ma togliento il -X dalla variabile USE

----------

## GianGian2387

Media-libs/harfbuzz-2.8.1 truetype

----------

## fedeliallalinea

Di solito non si dovrebbe usare --nodeps ma prova

```
# USE="-X -opengl" emerge -1 --nodeps cairo
```

freetype sembra solo una dipendenza a runtime.

Se questo va a buon fine prova a rilanciare l'udate che volevi fare.

----------

## GianGian2387

Result for search key:

Dev-haskell/Cairo masked

X11-lins/Cairo 

Dando l’altro comando solito errore

----------

## fedeliallalinea

Ma sei riuscito a installare cairo con USE="-X -opengl" emerge -1 --nodeps x11-libs/cairo?

----------

## GianGian2387

No, mi restituisce il messaggio che ho postato prima

----------

## fedeliallalinea

 *GianGian2387 wrote:*   

> No, mi restituisce il messaggio che ho postato prima

 

Puoi postare l'esatto output con wgetpaste?

----------

## GianGian2387

HTTP://dpaste.com/8429ZD9Z5

----------

## fedeliallalinea

Ok manca una dipendenza, prova con USE="-X -opengl" emerge -1 --nodeps media-libs/libpng x11-libs/cairo

----------

## GianGian2387

Parte l’installazione ma su x11-libs mi da errore (purtroppo la schermata scorre e non riesco a postare il risultato) se do il comando degli aggiornamenti solito errore

----------

## fedeliallalinea

Devi utilizzare wgetpaste, il file di log per i pacchetti che falliscono li trovi in /var/tmp/portage/<category>/<package>-<version>/temp/build.log.

----------

## GianGian2387

http://dpaste.com/9PSNRUZKW

----------

## fedeliallalinea

Ok manca anche pixman prova con USE="-X -opengl" emerge -1 --nodeps media-libs/libpng x11-libs/pixman x11-libs/cairo

----------

## GianGian2387

http://dpaste.com/4K6XKKJHH

----------

## fedeliallalinea

Ti faccio provare con l'ultimo comando USE="-X -opengl -glib" emerge -1 --nodeps media-libs/libpng x11-libs/pixman x11-libs/cairo poi mi sa che la via di usare --nodeps non funziona.

----------

## GianGian2387

non mi ha restituito alcun errore alla fine del processo, ho dato poi 

 *Quote:*   

> emerge --ask --verbose --update --deep --newuse @world

 

ed è partito! (200 aggiornamenti  :Razz: )

Spero di non avere più intoppi ora, ti ringrazio per l'aiuto e per la pazienza.

Se posso, avrei un ultima domanda... a cosa è dovuto questo errore? ho seguito passo passo la guida, non riesco proprio a capire

----------

## fedeliallalinea

Spero di riuscirmi a spiegare, per prima cosa il problema si verifica quando alcuni pacchetti non sono ancora installati nel sistema e sono selezionate delle use flag specifiche.

Prendiamo ad esempio media-libs/freetype e media-libs/harfbuzz, il primo ha come use flag harfbuzz, e quindi richiederà come dipendenza harfbuzz, mentre il secondo ha come use flag truetype, e quindi richiederà come dipendenza freetype quindi se abiliti queste use flag quando il pacchetto non è ancora installato hai un problema di dipendenze circolari:

media-libs/freetype[harfbuzz] richiede media-libs/harfbuzz ma anche media-libs/harfbuzz[truetype] richiede media-libs/freetype

Solitamente per rompere queste dipendenze circolari basta disabilitare alcune use flag temporaneamente per installare i pacchetti la prima volta.

Per il tuo problema probabilmente c'era una via più diretta per risolverlo ma non avendo accesso alla macchina tramite forum è un po' complicato.

----------

