Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
emerge von lvm2 ergibt merkwürdigen Fehler: [+/-]static-lib
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
MiRoSa
n00b
n00b


Joined: 24 Mar 2014
Posts: 26

PostPosted: Mon Mar 24, 2014 6:46 am    Post subject: emerge von lvm2 ergibt merkwürdigen Fehler: [+/-]static-lib Reply with quote

Hallo ich komme mit diesem Konflikt nicht weiter:
Code:
emerge -1 lvm2


Ergebnis:
Code:

Calculating dependencies... done!

The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)
# required by sys-fs/lvm2-2.02.105-r2[udev]
# required by lvm2 (argument)
>=virtual/udev-208-r1 static-libs

Use --autounmask-write to write changes to config files (honoring
CONFIG_PROTECT). Carefully examine the list of proposed changes,
paying special attention to mask or keyword changes that may expose
experimental or unstable packages.

emerge: there are no ebuilds built with USE flags to satisfy ">=sys-apps/systemd-208:0/1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,gudev?,introspection?,kmod?,selinux?,static-libs(-)?]".
!!! One of the following packages is required to complete your request:
- virtual/udev-208-r1::gentoo (Change USE: -static-libs)
(dependency required by "virtual/udev-208-r1" [ebuild])
(dependency required by "sys-fs/lvm2-2.02.105-r2[udev]" [ebuild])
(dependency required by "lvm2" [argument])


Was muss ich ändern um es installiert zu bekommen?


Miro
Back to top
View user's profile Send private message
frank9999
n00b
n00b


Joined: 20 Feb 2013
Posts: 61
Location: Germany

PostPosted: Mon Mar 24, 2014 9:28 am    Post subject: Reply with quote

Hallo,

das virtuelle Paket benötigt eine Useflag Änderung.
Der folgende Befehl löst dieses Problem, in dem er ein Eintrag für das Paket in die zuständige Datei anhängt.

echo ">=virtual/udev-208-r1 static-libs" >>/etc/portage/package.use

Aber warum muss es so eine aktuelle Version von lvm2 sein?
Stable auf AMD64 ist zur Zeit Version 2.02.103, die Version 2.02.105-r2 ist die aktuellste unstable Version.
Back to top
View user's profile Send private message
ChrisJumper
Advocate
Advocate


Joined: 12 Mar 2005
Posts: 2390
Location: Germany

PostPosted: Mon Mar 24, 2014 10:04 am    Post subject: Reply with quote

Herzlich Willkommen bei Gentoo/im Gentoo-Forum MiRoSa!


Verschiedene Dinge:

1.
Zuerst solltest du deine ABI setzen. Ich habe die Einführung irgendwie verpasst und aktuell keine Dokumentation darüber. (Edit: Ah doch hier, das Stichwort lautet Multilib und wurde gossamer-threads.com - gentoo Mailingliste angesprochen.) Kann sein das die nur für die Multilib-Konfiguration benötigt werden. Empfand das ABI-Setting aber als sehr intuitiv, da es sich an die Prozessor-Architektur anlehnt.

Mit Aufkommen dieser Useflags habe ich das ABI einfach in meine /etc/make.conf eingetragen.

Natürlich abhängig von deiner Chiparchitektur und deiner Orientierung (32 Bit oder 64 Bit System etc..) solltest du z.B. für ein reines 32 Bit System zum Beispiel:

ABI_X86="32" setzen, für ein reines 64 Bit System ABI_X86="64" oder für eine Mischung halt ABI_X86="32 64". Ich weiß nicht genau welche Pakete das brauchen, es geht aber um Bibiliotheken und in welcher Form die zur Verfügung gestellt werde. Schließlich kann man eine 32 Bit Programm nicht gegen eine 64 Bit Library liniken/laden.

Das ist aber wohl teilweise eine Ausnahme. Auf einem Reinen 64-Bit System braucht man das nicht. Die ganzen statischen gelinkten 32 Bit Programme die man vielleicht von dritten installiert, bringen eh ihre 32-Bit Libs mit.

Edit: Ich habe an dem vorherigen Absatz ein paar Änderungen vor genommen, denke er verwirrte eher als das er erläutert.

Welche anderen ABI_ Flags es ja noch gibt schlagen dir die relevanten Pakete ja quasi vor.

(Off Topic nebenbei bemerkt fällt mir grad auf: Ich weiß zt gar nicht was das abi_x86_x32 da soll...)

2.
In dem Fall kommen deine widersprüchlichen Angaben daher weil die >=virtual/udev-208-r1 static-libs gesetzt werden soll bei deiner AKTUELLEN emerge Anfrage.

Deine alten Pakete verlangen aber Teilweise noch das es nicht gesetzt ist.

Quote:
!!! One of the following packages is required to complete your request:
- virtual/udev-208-r1::gentoo (Change USE: -static-libs)
(dependency required by "virtual/udev-208-r1" [ebuild])
(dependency required by "sys-fs/lvm2-2.02.105-r2[udev]" [ebuild])
(dependency required by "lvm2" [argument])


probiere mal ein -N oder ein -Nu (für New Useflag und Update).

3.

Wie Frank schon anmerkte würde ich auch bei lvm2 bei der Stabilen Version bleiben wenn du nicht ein wichtiges Feature aus der neueren unstable Version benötigst.

4.
Bei dem Satz bin ich mir ehrlich gesagt nicht sicher:

Quote:
emerge: there are no ebuilds built with USE flags to satisfy ">=sys-apps/systemd-208:0/1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,gudev?,introspection?,kmod?,selinux?,static-libs(-)?]".


Eigentlich sollte damit die Version sys-apps/systemd-208 gemeint sein. Vielleicht hat portage ein Problem damit das lediglich die sys-apps/systemd-208-r2 oder sys-apps/systemd-208-r3 im portage sind. Oder die Useflags sind nicht entsprechend gesetzt.

Jedenfalls habe ich Gefühlt diese Fehlermeldung wenn ein anderes Paket eine veraltete nicht existierende Konfiguration von einem anderen Paket nachfragt (update anomalie durch alte installierte Pakete und nicht aktuelles Update des Portage-Baums). Oder wenn das Paket gar nicht mehr existiert.

In dem Fall ist es aber einfach, installiere einfach Systemd-208-r2 und prüfe diese seltsamen Useflags/setze sie entsprechend. :D

5.
Generell würde ich behaupten man setzt static-libs lieber bei Dingen wie lvm2, die für den Boot-Vorgang nützlich sind, als das die dynamischen libs nachher fehlen und das System nicht bootet. Hier stelle ich via $ equery u systemd aber fest das systemd gar kein static-libs Useflag mehr besitzt. Ja dann hat sich das wohl erledigt. Mach mal ein Update von Portage.

6.
Die Virtuellen Pakete blocken manchmal saublöd (sie wenn ich Manuel z.b. udev entferne werden sie nicht automatisch entfernt/zurückgesetzt) wenn du weißt was du machst entferne die einfach kurz, bevor du lvm2 neu baust.
Back to top
View user's profile Send private message
MiRoSa
n00b
n00b


Joined: 24 Mar 2014
Posts: 26

PostPosted: Mon Mar 24, 2014 8:45 pm    Post subject: Reply with quote

frank9999 wrote:


echo ">=virtual/udev-208-r1 static-libs" >>/etc/portage/package.use



führt zu:
Code:

Calculating dependencies... done!

emerge: there are no ebuilds built with USE flags to satisfy ">=sys-apps/systemd-208:0/1[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,gudev?,introspection?,kmod?,selinux?,static-libs(-)?]".
!!! One of the following packages is required to complete your request:

(dependency required by "virtual/udev-208-r1" [ebuild])
(dependency required by "sys-fs/lvm2-2.02.105-r2[udev]" [ebuild])
(dependency required by "lvm2" [argument])


Ok, eine Meldung ist weg, aber es emerged auch nicht

Ich glaube, es ist ein USE-Flag-Problem, da kenne ich mich allerdings nicht wirklich aus (außer wie man sie setzt oder nicht setzt (make.conf und package.use))
systemd verlangt virtual/udev-208-r1::gentoo (Change USE: -static-libs)
und lvm2 verlangt das alte udev ...

Ich habe es auch mit lvm2-2.02.103 versucht; gleiches Ergebnis...
Back to top
View user's profile Send private message
Josef.95
Advocate
Advocate


Joined: 03 Sep 2007
Posts: 4549
Location: Germany

PostPosted: Tue Mar 25, 2014 12:19 am    Post subject: Reply with quote

Hm, du hast vermutlich >=sys-apps/systemd-208:0 installiert, und versuchst nun sys-fs/lvm2[static-libs] (mit USE= static-libs) zu bauen?
Falls ja, das wird so wahrscheinlich nicht funktionieren können, da sys-fs/lvm2[static-libs] dann virtual/udev[static-libs] als Abhängigkeit zieht, welches dann mit dem installierten >=sys-apps/systemd-208:0 kollidiert, da >=sys-apps/systemd-208:0 die geforderte virtual/udev[static-libs] dep nicht erfüllen kann (weil es in >=sys-apps/systemd-208:0 kein USE=static-libs mehr gibt)

Zugegeben, die deps sind nicht wirklich leicht zu durchschauen :)
Interessant wäre mit welchen USE-Flags du versuchst sys-fs/lvm2 zu bauen, und ob sys-fs/udev oder systemd installiert ist.

/edit:
Oder ein wenig einfacher formuliert: Wenn du >=sys-apps/systemd-208:0 installiert hast (oder es woanders her als Abhängigkeit gefordert wird)
dann muss virtual/udev mit USE=-static-libs installiert sein,
somit kann sys-fs/lvm2 dann nur mit USE=-static-libs installiert werden.
Back to top
View user's profile Send private message
MiRoSa
n00b
n00b


Joined: 24 Mar 2014
Posts: 26

PostPosted: Tue Mar 25, 2014 7:02 am    Post subject: Reply with quote

Ich habe es mit Eurer Hilfe gelöst! Danke!

Lösung:
Code:

echo "sys-fs/lvm2 -udev" >>/etc/portage/package.use


Dann übersetzt es wenigstens, was das für Folgen im Betrieb hat, weiß ich noch nicht
Back to top
View user's profile Send private message
Josef.95
Advocate
Advocate


Joined: 03 Sep 2007
Posts: 4549
Location: Germany

PostPosted: Tue Mar 25, 2014 8:46 am    Post subject: Reply with quote

Hehe, mit den von den Maintainern im Profil und ebuild vorgegebenen Flags hätte es auch funktionieren sollen ;)
Code:
$ emerge -pv =sys-fs/lvm2-2.02.105-r2 virtual/udev

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

Calculating dependencies... done!
[ebuild   R    ] virtual/udev-208-r1  USE="gudev kmod -introspection (-selinux) -static-libs" 0 kB
[ebuild  N     ] sys-block/thin-provisioning-tools-0.2.8-r2  USE="{-test}" 0 kB
[ebuild  N     ] sys-fs/lvm2-2.02.105-r2  USE="readline thin udev -clvm -cman -device-mapper-only -lvm1 -lvm2create_initrd (-selinux) -static -static-libs" 0 kB

Total: 3 packages (2 new, 1 reinstall), Size of downloads: 0 kB
Back to top
View user's profile Send private message
haegar87
Apprentice
Apprentice


Joined: 08 Jan 2006
Posts: 164

PostPosted: Thu Jun 05, 2014 10:56 pm    Post subject: Reply with quote

Anmerkung: Falls du die stati Variante für einen initramfs brauchst, kannst du auch die nicht-static Variante nehmen.
Dann müssen nur die libs mit in die init... hat bei mir funktioniert.

Nötige libs lassen sich einfach via ldd /sbin/lvm ermitteln.
_________________
"Spielt man die Windows CD rückwärts ab, hört man satanistische Texte!" - "Das ist ja noch harmlos! Wenn man sie vorwärts abspielt, installiert sich das Teufelszeug!"
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