Emerge: Unterschied zwischen den Versionen

Aus WIKI
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 6: Zeile 6:


</pre>
</pre>
Veraltetes Portage aktualisieren ... [http://mexmat.sgu.ru/soft/Linux/distributions/gentoo/portage/ Alte Portage Versionen]


Bei qt problemem könnte dies helfen:
Bei qt problemem könnte dies helfen:
<pre>
<pre>
emerge -avu1 $(qlist -IvC /qt- | grep 4. | sed s/-4.*//)
emerge -avu1 $(qlist -IvC /qt- | grep 4. | sed s/-4.*//)
</pre>
neuer... qt aktualisieren:
<pre>
emerge -qa1 $(qlist -IC dev-qt/qt)
</pre>
</pre>


Zeile 22: Zeile 29:
<pre>
<pre>
emerge -avutDN --verbose-conflicts system 2>&1 | grep dev-lang/perl | grep required | cut -d" " -f8 | cut -d"(" -f2 | cut -d":" -f1
emerge -avutDN --verbose-conflicts system 2>&1 | grep dev-lang/perl | grep required | cut -d" " -f8 | cut -d"(" -f2 | cut -d":" -f1
</pre>
Perl upgraden
<pre>
perl-cleaner --all
</pre>
</pre>


Zeile 37: Zeile 49:


Herausfinden welches march=? für die aktuelle CPU gesetzt werden sollte: <code>gcc -march=native -Q --help=target | grep march</code>
Herausfinden welches march=? für die aktuelle CPU gesetzt werden sollte: <code>gcc -march=native -Q --help=target | grep march</code>
Entfernen von required packeten:
emerge ausgabe in die Datei "test" schreiben und dann die benötigten Packete raus extrahieren
<pre>
cat test | grep required | cut -d"(" -f2 | cut -d":" -f1 | cut -d"." -f1
</pre>
'''Use flags'''
global deaktiviertes use flag (-heif) für arm aktivieren: in Datei /usr/portage/profiles/arch/arm/package.use.mask die Zeile "media-gfx/imagemagick -heif" hinzufügen
qtwebengine 5.12.3 konnte nicht auf Dell 9630 gebaut werden, da anscheint 8GB RAM zu wenig waren, lösung könnte sein in make.conf -j5 auf j-2 zu setzen...
'''Package abhängigkeiten'''
Anzeigen welche Packete das angegebene Packet benötigen (ohne dies nicht gebaut/ausgeführt werden können)
<pre>
equery depends <package name>
</pre>
Anzeigen welche Packete von dem angegebene Packet benötigt werden um es ausführen zu können
<pre>
equery depgraph <package name>
</pre>
'''Portage Einstellungen anzeigen'''
<pre>
emerge --info
</pre>
'''Spezielle Packet version installieren'''
<pre>
emerge -av =python-2.7.18-r1
</pre>
'''Tips'''
<pre>
emerge --unmerge $(emerge --verbose-conflicts -avutDN system 2>&1 | grep required | cut -f2 -d"(" | cut -f1 -d":" | sort | uniq)
</pre>
'''Unmask'''
Problem:
<pre>
root # emerge -av autossh
These are the packages that would be merged, in order:
Calculating dependencies... done!
!!! All ebuilds that could satisfy "autossh" have been masked.
!!! One of the following masked packages is required to complete your request:
- net-misc/autossh-1.4g::gentoo (masked by: ~arm64 keyword)
For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.
</pre>
Lösung:
<pre>
root # echo "=net-misc/autossh-1.4g ~arm64" >> /etc/portage/package.accept_keywords/autossh
</pre>

Aktuelle Version vom 14. November 2022, 21:32 Uhr

System bereinigen

emerge -avu app-portage/gentoolkit
revdep-rebuild

Veraltetes Portage aktualisieren ... Alte Portage Versionen

Bei qt problemem könnte dies helfen:

emerge -avu1 $(qlist -IvC /qt- | grep 4. | sed s/-4.*//)

neuer... qt aktualisieren:

emerge -qa1 $(qlist -IC dev-qt/qt)

Alles was installiert ist anzeigen

equery list "*"

Perl probleme beheben...

Auflisten von allen benötigten packeten

emerge -avutDN --verbose-conflicts system 2>&1 | grep dev-lang/perl | grep required | cut -d" " -f8 | cut -d"(" -f2 | cut -d":" -f1

Perl upgraden

perl-cleaner --all

circular dependencies beheben...? zB:

* Error: circular dependencies:

(dev-python/six-1.11.0:0/0::gentoo, ebuild scheduled for merge) depends on
 (dev-python/setuptools-34.0.2-r1:0/0::gentoo, ebuild scheduled for merge) (buildtime)
  (dev-python/six-1.11.0:0/0::gentoo, ebuild scheduled for merge) (buildtime)

Habe alles deinstalliert was sich nicht neu bauen liess und dann emerge --oneshot =dev-python/six-1.10.0 ausgeführt, um dann emerge -avutDN system ohne probleme ausführen zu können.


Herausfinden welches march=? für die aktuelle CPU gesetzt werden sollte: gcc -march=native -Q --help=target | grep march

Entfernen von required packeten:

emerge ausgabe in die Datei "test" schreiben und dann die benötigten Packete raus extrahieren

cat test | grep required | cut -d"(" -f2 | cut -d":" -f1 | cut -d"." -f1


Use flags

global deaktiviertes use flag (-heif) für arm aktivieren: in Datei /usr/portage/profiles/arch/arm/package.use.mask die Zeile "media-gfx/imagemagick -heif" hinzufügen


qtwebengine 5.12.3 konnte nicht auf Dell 9630 gebaut werden, da anscheint 8GB RAM zu wenig waren, lösung könnte sein in make.conf -j5 auf j-2 zu setzen...


Package abhängigkeiten

Anzeigen welche Packete das angegebene Packet benötigen (ohne dies nicht gebaut/ausgeführt werden können)

equery depends <package name>

Anzeigen welche Packete von dem angegebene Packet benötigt werden um es ausführen zu können

equery depgraph <package name>

Portage Einstellungen anzeigen

emerge --info


Spezielle Packet version installieren

emerge -av =python-2.7.18-r1

Tips

emerge --unmerge $(emerge --verbose-conflicts -avutDN system 2>&1 | grep required | cut -f2 -d"(" | cut -f1 -d":" | sort | uniq)

Unmask

Problem:

root # emerge -av autossh

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

Calculating dependencies... done!

!!! All ebuilds that could satisfy "autossh" have been masked.
!!! One of the following masked packages is required to complete your request:
- net-misc/autossh-1.4g::gentoo (masked by: ~arm64 keyword)

For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.

Lösung:

root # echo "=net-misc/autossh-1.4g ~arm64" >> /etc/portage/package.accept_keywords/autossh