[BSD] corrupted ports tree?

Zahemszky Gábor Gabor at Zahemszky.HU
2006. Nov. 30., Cs, 22:20:16 CET


> Na ezt nem tudtam! Akkor most lehet hogy ez lesz:
> 
> pkg_delete -a
> rm -fr /usr/ports
> rm -fr /var/db/pkg

Mit szólnál a legelső helyett az "rm -rf /var/db/pkg /usr/X11R6
/usr/local" parancshoz? Kategóriákkal gyorsabb lenne. De tény és való,
_akad_ pár olyan parancs, aki nem e két hely valamelyikébe pakol.

> Csakhogy alapból nincsen beállítva PKG_PATH, és azt "elfelejtették" 
> odaírni, hogy ilyenkor a csomagot letölti a freebsd.org-ról. Azt is 
> elfelejtették beleírni, hogy ez összezagyválja az egész rendszert. :-(

Én úgy emlékszem, hogy elég sok helyen olvastam már, hogy _vagy_ port,
_vagy_ package, de ettől neked még nem kellett ilyen olvasmányba eddig
belefutnod. Most megtetted.

> Na ez azért így nem igaz. Az .so (shared object) állomány egyáltalán 
> nincsen linkelve semmihez. :-) Ami meg nem shared az statikus, tehát ha 

No akkor csak annyit, hogy vannak még finomítandó ismereteid:

$ ldd /usr/local/lib/libgtkmm-2.4.so.1
libgtkmm-2.4.so.1:
        libgdkmm-2.4.so.1 => /usr/local/lib/libgdkmm-2.4.so.1 (0x28444000)
        libpangomm-1.4.so.1 => /usr/local/lib/libpangomm-1.4.so.1
(0x28482000)
        libglibmm-2.4.so.1 => /usr/local/lib/libglibmm-2.4.so.1 (0x284a7000)
        libsigc-2.0.so.0 => /usr/local/lib/libsigc-2.0.so.0 (0x284ea000)
        libcairomm-1.0.so.1 => /usr/local/lib/libcairomm-1.0.so.1
(0x284ef000)
        libgtk-x11-2.0.so.0 => /usr/local/lib/libgtk-x11-2.0.so.0
(0x28504000)
        libgdk-x11-2.0.so.0 => /usr/local/lib/libgdk-x11-2.0.so.0
(0x28808000)
        libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0x28884000)
        libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x28888000)
        libXinerama.so.1 => /usr/X11R6/lib/libXinerama.so.1 (0x28890000)
        libatk-1.0.so.0 => /usr/local/lib/libatk-1.0.so.0 (0x28893000)
        libgdk_pixbuf-2.0.so.0 => /usr/local/lib/libgdk_pixbuf-2.0.so.0
(0x288ac
000)
        libpangocairo-1.0.so.0 => /usr/local/lib/libpangocairo-1.0.so.0
(0x288c0
000)
        libXcursor.so.1 => /usr/X11R6/lib/libXcursor.so.1 (0x288c8000)
        libXfixes.so.3 => /usr/X11R6/lib/libXfixes.so.3 (0x288d1000)
        libcairo.so.2 => /usr/local/lib/libcairo.so.2 (0x288d6000)
        libpangoft2-1.0.so.0 => /usr/local/lib/libpangoft2-1.0.so.0
(0x28930000)
        libfontconfig.so.1 => /usr/X11R6/lib/libfontconfig.so.1 (0x28959000)
        libfreetype.so.9 => /usr/local/lib/libfreetype.so.9 (0x28986000)
        libz.so.3 => /lib/libz.so.3 (0x289ea000)
        libpango-1.0.so.0 => /usr/local/lib/libpango-1.0.so.0 (0x289fb000)
        libXrender.so.1 => /usr/X11R6/lib/libXrender.so.1 (0x28a33000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x28a3b000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x28afc000)
        libgobject-2.0.so.0 => /usr/local/lib/libgobject-2.0.so.0
(0x28b09000)
        libgmodule-2.0.so.0 => /usr/local/lib/libgmodule-2.0.so.0
(0x28b3e000)
        libglib-2.0.so.0 => /usr/local/lib/libglib-2.0.so.0 (0x28b41000)
        libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x28bca000)
        libatkmm-1.6.so.1 => /usr/local/lib/libatkmm-1.6.so.1 (0x28cb7000)
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x28cf4000)
        libm.so.4 => /lib/libm.so.4 (0x28dbf000)
        libglitz.so.1 => /usr/local/lib/libglitz.so.1 (0x28dd5000)
        libpng.so.5 => /usr/local/lib/libpng.so.5 (0x28dfb000)
        libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x28e1c000)
        libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x28e24000)
        libexpat.so.6 => /usr/local/lib/libexpat.so.6 (0x28e3a000)
        libintl.so.6 => /usr/local/lib/libintl.so.6 (0x28e58000)
$

> Nem tipikus, viszont elkerülhetetlen. Megnézném hogy egy P2 gépen ki az 
> a marha, aki openoffice.org-ot fordít. Eltarhat neki egy hétig (ha 

Volt rá példa :-) Én pl. p3-n szoktam volt fordítani, nem is egyszer -
volt egy kb 3 hónapos periódus, amikor hetente lefordítottam. Szóval meg
lehet tenni.

> egyáltalán sikerül). És mivel elkerülhetetlen, és mivel a ports tree nem 
> működhet együtt gond nélkül a bináris csomagokkal, ezért azt is 
> kijelenthetjük, hogy az egész ports tree rendszer nem működhet gond 
> nélkül. :-(

De igen: Amikor telepítesz egy íRELEASE-t, akkor felteszed a _hozzá
tartozó_ ports -ot. És azt használod, frissítés nélkül.

Zahy < Gabor at Zahemszky dot HU >

-- 
#!/bin/ksh
Z='21N16I25C25E30, 40M30E33E25T15U!';IFS=' ABCDEFGHIJKLMNOPQRSTUVWXYZ
';set -- $Z;for i;{ [[ $i = ? ]]&&print $i&&break;[[ $i = ???
]]&&j=$i&&i=${i%?};typeset -i40 i=8#$i;print -n ${i#???};[[ "$j" = ???
]]&&print -n "${j#??} "&&j=;typeset +i i;};IFS=' 0123456789 ';set --
$Z;for i;{ [[ $i = , ]]&&i=2;[[ $i = ?? ]]||typeset -l i;j="$j
$i";typeset +l i;};print "$j"



További információk a(z) BSD levelezőlistáról