Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
emerge Ausgabe von Fehlern verstehen
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
pablo_supertux
Advocate
Advocate


Joined: 25 Jan 2004
Posts: 2727
Location: Somewhere between reality and Middle-Earth and in Freiburg (Germany)

PostPosted: Wed Nov 15, 2017 8:08 pm    Post subject: emerge Ausgabe von Fehlern verstehen Reply with quote

Ich hab seit Wochen kein eix-sycn gemacht und heute habe ich es gemacht. Wie erwartet werde ich von Abhängigkeitsfehlern überschlagen.

emerge liefert mittlerweile so viel Info, dass ich noch nicht in der Lage bin zu verstehen, was emerge mir genau sagen will.

Z.b.

Code:

emerge: there are no ebuilds to satisfy ">=sys-libs/zlib-1.2.8-r1:0/0=[abi_x86_32(-),abi_x86_64(-)]".


was genau bedeutet :0/0=[abi_x86_32(-),abi_x86_64(-)]? eix zlib sagt: Available versions: 1.2.11(0/1) 1.2.11-r1(0/1) und installiert ist .2.11-r1. Was ist (0/1)? Was ist das für ein slot?

oder

Code:

All ebuilds that could satisfy "=dev-util/boost-build-1.63*" have been masked.


Wenn ich aber eix boost mache, bekomme ich 1.62.0-r1(0/1.62.0)^t 1.63.0(0/1.63.0)^t (in Available versions). Was heißt hier ^t, und das ist wieder diese Notation (0/1.63.0). Bei mir ist übrigens 1.62.0-r1 drauf, wieso bekomme ich fiese Fehler?

Eine andere Ausgabe, die mich zweifeln lässt:

Code:

  (dev-libs/boost-1.62.0-r1:0/1.62.0::gentoo, installed) pulled in by
    >=dev-libs/boost-1.46.0:0/1.62.0= required by (media-video/mkvtoolnix-9.6.0:0/0::gentoo, installed)
                           ^^^^^^^^^^                                                                                                     
    (and 2 more with the same problem)



Was heißt >=dev-libs/boost-1.46.0:0/1.62.0= denn das? Dass media-video/mkvtoolnix boost nur in den Versionen zwischen 1.46.0 und 1.62.0 haben will?

Und vor allem, wie kann man diese Probleme lösen?

Danke
_________________
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
Back to top
View user's profile Send private message
LuxJux
Apprentice
Apprentice


Joined: 01 Mar 2016
Posts: 290

PostPosted: Wed Nov 15, 2017 11:03 pm    Post subject: Reply with quote

boost soll man mit
Code:
makeopts=-j1

bauen
P.S: bei mir ist boost= 1.65.1
Back to top
View user's profile Send private message
michael_w
Guru
Guru


Joined: 22 Feb 2006
Posts: 398
Location: 09xxx

PostPosted: Thu Nov 16, 2017 2:55 pm    Post subject: Reply with quote

LuxJux wrote:
boost soll man mit
Code:
makeopts=-j1

bauen


Und das löst obiges Problem? Glaub ich eher nicht. Und Gegenfrage, wieso soll man das so bauen, wo steht das und was passiert wenn man das nicht beachtet? Ich habe boost noch nie mit makeopts=-j1 gebaut (immer volle Pulle), was muss ich befürchten?
_________________
Linux ryzen 4.14.65-gentoo #2 SMP Wed Aug 29 11:46:11 CEST 2018 x86_64 AMD Ryzen 7 1800X Eight-Core Processor AuthenticAMD GNU/Linux
Back to top
View user's profile Send private message
firefly
Advocate
Advocate


Joined: 31 Oct 2002
Posts: 4378

PostPosted: Thu Nov 16, 2017 3:40 pm    Post subject: Re: emerge Ausgabe von Fehlern verstehen Reply with quote

pablo_supertux wrote:

Was heißt >=dev-libs/boost-1.46.0:0/1.62.0= denn das? Dass media-video/mkvtoolnix boost nur in den Versionen zwischen 1.46.0 und 1.62.0 haben will?

Der Part hinter dem "/" (0/1.62.0) spezifiziert einen subslot.
Allgemeine info zu subslots: https://wiki.gentoo.org/wiki/Sub-slots_and_Slot-Operators
Vereinfacht gesagt werden subslots verwendet falls eine neuere version eines pakets im selben slot eine Änderung hat, welche die ABI bricht.
Wenn portage feststellt das ein update für boost installiert werden soll, welches aber einen anderen subslot zugeordnet ist so baut portage automatisch alle pakete nue, welche das paket mit dem alten subslot als abhängigkeit spezifizieren.

In dem oben genannten Beispiel verlangt mkvtoolnix boost in mindestens der version 1.46.0 und neuer wobei die neueren Versionen dem subslot 1.62.0 zugeordnet sein sollen.
Bei dir soll wohl ein update von boost auf version 1.63.0 gemacht werden. Diese Version ist aber dem subslot 1.62.0 zugeordnet. Dadurch muss mkvtoolnix nach dem update von boost neu übersetzt werden, damit die neuen Abhängigkeiten stimmen.

Ich hoffe das hilft etwas weiter.

Wie schon gesagt eigendlich sollte der rebuild von mkvtoolnix automatisch von portage gemacht werden, wenn das update von boost durchgeführt werden soll. Aber ab welcher version das so ist kann ich nicht sagen
_________________
Ein Ring, sie zu knechten, sie alle zu finden,
Ins Dunkel zu treiben und ewig zu binden
Im Lande Mordor, wo die Schatten drohn.
Back to top
View user's profile Send private message
LuxJux
Apprentice
Apprentice


Joined: 01 Mar 2016
Posts: 290

PostPosted: Thu Nov 16, 2017 5:37 pm    Post subject: Reply with quote

michael_w wrote:
Und Gegenfrage, wieso soll man das so bauen, wo steht das und was passiert wenn man das nicht beachtet? I


https://forums.gentoo.org/viewtopic-p-7520078.html
Back to top
View user's profile Send private message
ChrisJumper
Advocate
Advocate


Joined: 12 Mar 2005
Posts: 2167
Location: Germany

PostPosted: Thu Nov 16, 2017 7:30 pm    Post subject: Reply with quote

Bei mir lief boost auf den meisten Systemen so durch. Erinnere mich aber das ein System es (-j1) auch haben wollte.

@pablo_supertux
Vergiss nicht das da auch ein gcc-upgrade auf 5.4 mit dabei ist. Das würde ich wenn du eh schon Updates machst ziemlich früh ansetzen. Gentoo wiki: Upgrading GCC
Back to top
View user's profile Send private message
pablo_supertux
Advocate
Advocate


Joined: 25 Jan 2004
Posts: 2727
Location: Somewhere between reality and Middle-Earth and in Freiburg (Germany)

PostPosted: Thu Nov 16, 2017 7:53 pm    Post subject: Re: emerge Ausgabe von Fehlern verstehen Reply with quote

firefly wrote:
pablo_supertux wrote:

Was heißt >=dev-libs/boost-1.46.0:0/1.62.0= denn das? Dass media-video/mkvtoolnix boost nur in den Versionen zwischen 1.46.0 und 1.62.0 haben will?

Der Part hinter dem "/" (0/1.62.0) spezifiziert einen subslot.


Ich war in der Annahme, dass slots/subslots nur numerisch sein können, deshalb fand ich das verwirrend

firefly wrote:

Vereinfacht gesagt werden subslots verwendet falls eine neuere version eines pakets im selben slot eine Änderung hat, welche die ABI bricht.
Wenn portage feststellt das ein update für boost installiert werden soll, welches aber einen anderen subslot zugeordnet ist so baut portage automatisch alle pakete nue, welche das paket mit dem alten subslot als abhängigkeit spezifizieren.



Wenn das meistens portage macht, wieso ist es hier fehlgeschlagen?

firefly wrote:

In dem oben genannten Beispiel verlangt mkvtoolnix boost in mindestens der version 1.46.0 und neuer wobei die neueren Versionen dem subslot 1.62.0 zugeordnet sein sollen.
Bei dir soll wohl ein update von boost auf version 1.63.0 gemacht werden. Diese Version ist aber dem subslot 1.62.0 zugeordnet. Dadurch muss mkvtoolnix nach dem update von boost neu übersetzt werden, damit die neuen Abhängigkeiten stimmen.


D.h. in solchen Fällen müsste ich zuerst boost aktualisieren und dann deren Abhängigkeiten in 2 separate Schritte?

ChrisJumper wrote:

@pablo_supertux
Vergiss nicht das da auch ein gcc-upgrade auf 5.4 mit dabei ist. Das würde ich wenn du eh schon Updates machst ziemlich früh ansetzen. Gentoo wiki: Upgrading GCC


ja, das sollte ich auch machen. Danke für den Hinweis.
_________________
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
Back to top
View user's profile Send private message
ChrisJumper
Advocate
Advocate


Joined: 12 Mar 2005
Posts: 2167
Location: Germany

PostPosted: Thu Nov 16, 2017 8:26 pm    Post subject: Re: emerge Ausgabe von Fehlern verstehen Reply with quote

pablo_supertux wrote:

D.h. in solchen Fällen müsste ich zuerst boost aktualisieren und dann deren Abhängigkeiten in 2 separate Schritte?


So hab ich das auch gemacht, aber man muss halt aufpassen das immer ein boost installiert ist. Also emerge -u boost und wenn das sauber durch war, kannst du die andere Version entfernen. Wobei natürlich auch die Programme neu gebaut werden müssen die Boost benötigen.. (Preserved-rebuild)

Ich glaube Portage verschluckt sich öfter einfach mit den Abhängigkeiten. Da muss man die dann selber lösen. Sonst bekommt man den Hinweise das Portage nicht los legt, weil quasi zwei Gruppen sich widersprechen.

Dann guckt man darauf und muss überlegen ob man sich für die eine oder die andere Seite entscheiden will. Die alternative ist natürlich immer das alle Abhängigkeiten die die alte Version wollen, komplett mit der neuen neu gebaut werden.

Bin mir nicht sicher, aber das Anzeigen dieser großen Böcke verhindert halt das er noch mehr arch-Keywords verlangt und das so eine Aufwärtsspirale wird. Als auch das man öfter die Wahl hat vor dem Kompilieren darauf hingewiesen wird: z.B. "Dann muss ich auch Libre Office neu bauen wenn wir jetzt das Paket aktualisieren".

Bin da aber kein guter Ratgeber hier weil ich selber immer z.B. alle QT-Pakete neu baue bei einem etwas größeren QT-Update weil die sich bei mir immer blockieren.
Back to top
View user's profile Send private message
Josef.95
Advocate
Advocate


Joined: 03 Sep 2007
Posts: 3490
Location: Germany

PostPosted: Fri Nov 17, 2017 4:02 am    Post subject: Reply with quote

Quote:
@pablo_supertux
Vergiss nicht das da auch ein gcc-upgrade auf 5.4 mit dabei ist. Das würde ich wenn du eh schon Updates machst ziemlich früh ansetzen. Gentoo wiki: Upgrading GCC

Hm, in diesem Fall sollte man das umstellen auf den neuen >=gcc-5 Compiler wegen dem ABI-Wechsel besser erst nach dem @world Update und dem anschließenden --depclean machen. Das hat beim anschließenden nötigen rebuild den enormen Vorteil, das alle Dependencies schon sauber aufgelöst sind, und somit der rebuild in der passenden Reihenfolge durchbauen sollte.
Versucht den rebuild (wie in der News empfohlen) bitte nicht auf einem nicht komplett upgedateten System - dass würde ansonsten sicherlich zu vielen Compile-Errors führen.
Bei diesem nötigen rebuild ist die richtige Reihenfolge in der die Pakete gebaut werden sehr wichtig - und das funktioniert idR nur auf einem System auf dem keine Abhängigkeitskonflikte und Updates offen sind.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum