Benutzer-Werkzeuge

Webseiten-Werkzeuge


freebsd:freebsd_-_portmaster

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
freebsd:freebsd_-_portmaster [2024-02-11 01:05:26] – [Vorbereitungen] manfredfreebsd:freebsd_-_portmaster [2025-08-09 23:04:14] (aktuell) – [Vorbereitungen] manfred
Zeile 1: Zeile 1:
 +====== FreeBSD - PortMaster ======
 +
 +[[https://docs.freebsd.org/de/books/handbook/ports/]]
 +
 +
 +===== Vorbereitungen =====
 +
 +  * [[https://docs.freebsd.org/en/books/handbook/ports/]]
 +  * [[::freebsd:FreeBSD - PKG]]
 +  * [[::freebsd:FreeBSD - Update]]
 +  * [[::freebsd:FreeBSD - Upgrade]]
 +  * [[::freebsd:FreeBSD - Ports-Tree]]
 +  * [[::freebsd:FreeBSD - PortUpgrade]]
 +
 +
 +===== Installation =====
 +
 +  * [[http://www.freebsd.org/doc/de/books/handbook/ports-using.html]]
 +
 +//PortMaster// verwendet nur Werkzeuge, die bereits im Basissystem vorhanden sind (ist also nicht von weiteren Ports abhängig). Es verwendet Informationen in ''/var/db/pkg/'', um festzustellen, welche Ports aktualisiert werden sollen. Damit ist es weiterhin möglich Pakete mit //make install// zu installieren.
 +
 +  > cd /usr/ports/ports-mgmt/portmaster
 +  > make install clean
 +
 +einen Port (Bash) installieren:
 +  > portmaster shells/bash
 +
 +einen Port (Bash) installieren und gleichzeitig auch als Paket (für andere Hosts) ablegen:
 +  > portmaster -g shells/bash
 +  
 +  > ls -lha /usr/ports/packages/
 +  total 10
 +  drwxr-xr-x   3 root  wheel     3B Mar  3 21:35 .
 +  drwxr-xr-x  71 root  wheel    89B Mar  2 00:09 ..
 +  drwxr-xr-x   2 root  wheel     3B Mar  3 21:35 portmaster-download
 +  
 +  > ls -lha /usr/ports/packages/portmaster-download/
 +  total 1502
 +  drwxr-xr-x  2 root  wheel     3B Mar  3 21:35 .
 +  drwxr-xr-x  3 root  wheel     3B Mar  3 21:35 ..
 +  -rw-r--r--  1 root  wheel   1.5M Feb  3 02:18 bash-5.1.16.pkg
 +
 +zeigt alle installierten Ports an:
 +  > portmaster -L
 +  ===>>> Root ports (No dependencies, not depended on)
 +  ===>>> base64-1.5_2
 +  ===>>> bsdhwmon-20151206
 +  ===>>> New version available: bsdhwmon-20151206_1
 +  ===>>> bsdinfo-0.22_2
 +  ===>>> bsdstats-7.0_3
 +  ===>>> cdparanoia-3.9.8_10
 +  ...
 +  ===>>> zeroer-0.1_2
 +  ===>>> 111 leaf ports
 +  
 +  ===>>> 630 total installed ports
 +  ===>>> 125 have new versions available
 +
 +aktualisiert alle installierten und veralteten Ports:
 +  > portmaster -a
 +
 +einen Port/Paket löschen, auch die danach nicht mehr benötigten Abhängigkeiten:
 +  > portmaster -e editors/nano
 +
 +bereinigt die veralteten Ports, die früher benötigt wurden aber jetzt nicht mehr:
 +  > portmaster -s
 +
 +Nur Distfiles abrufen:
 +  > portmaster -F
 +
 +überprüft die Abhängigkeiten:
 +  > portmaster --check-depends
 +  Checking all packages: 100%
 +  p5-DBD-Pg has a missing dependency: postgresql15-client
 +  p5-DBD-Pg is missing a required shared library: libpq.so.5
 +  php81-pdo_pgsql has a missing dependency: postgresql15-client
 +  php81-pdo_pgsql is missing a required shared library: libpq.so.5
 +  php81-pgsql has a missing dependency: postgresql15-client
 +  php81-pgsql is missing a required shared library: libpq.so.5
 +  py39-psycopg2 has a missing dependency: postgresql15-client
 +  py39-psycopg2 is missing a required shared library: libpq.so.5
 +
 +löscht alle veralteten Einträgen in ''/var/db/ports'':
 +  > portmaster --check-port-dbdir -y
 +  ===>>> Building list of installed port names
 +  
 +  ===>>> Checking /var/db/ports
 +          ===>>> archivers_7-zip does not seem to be installed
 +  
 +          ===>>> archivers_p7zip does not seem to be installed
 +  
 +          ===>>> archivers_rpm4 does not seem to be installed
 +  
 +          ===>>> archivers_unzip does not seem to be installed
 +  ...
 +
 +so wird immer ein ''make config'' vorher gemacht:
 +  > portmaster -aG
 +
 +wenn ein Fehler aufgetreten ist, kann man mit dem Schalter "''-f''"
 +__alle__ installierten Ports neu (und aktuell) bauen:
 +  > portmaster -afG
 +  > portmaster -af
 +
 +**so mache ich das (Beispiele):**
 +  > portmaster -ybgtwR shells/bash-static editors/vim sysutils/screen misc/mc
 +  > portmaster -ybgtwRa
 +
 +
 +===== Extras =====
 +
 +sauber machen:
 +  > portmaster ports-mgmt/portupgrade
 +  > portsclean -CDL
 +
 +
 +===== Problem =====
 +
 +  > pkg-static: Unable to access file /var/ports/usr/ports/lang/python27/work/stage/usr/local/lib/python2.7/lib-dynload/_hashlib.so:No such file or directory
 +
 +
 +==== Lösung ====
 +
 +  > /var/ports/usr/ports/ports-mgmt/pkg
 +  > make clean deinstall install
 +  > make clean
 +
 +  > cd /ports/usr/ports/lang/python27/
 +  > make makeplist > pkg-plist.2
 +  > sdiff pkg-plist /tmp/pkg-plist | grep -F '<'
 +  > rm /tmp/pkg-plist
 +  
 +  > make clean
 +  > git pull
 +  > make clean deinstall install
 +  > make clean
 +