A v čem jsou balíčkovací systémy na Linuxu lepší než MacPorts?
Imho jsou MacPorts opravdu pokročile a chytře udělané, třeba když jsem poprvé viděl aktivaci/deaktivaci nainstalovaného softu, nechápal jsem - a následně uznale pokýval hlavou :) Imho jsou pokročilejší než porty na FreeBSD.
A jestli narážíš na množství SW v portech, tak to je pravda, to je trochu menší, ale na druhou stranu člověk na Macu má pro spoustu chybějících aplikací nativní Aqua náhradu...
No při mých pokusech jsem spíš narazil na chování, že jsem napsal sudo port install něco, ono se to chvilku snažilo a něco to dělalo, pak to vyblilo chybovou hlášku a ahoj. :-) Asi jsem hodně zlenivělý z Ubuntu a sudo apt-get install fakt-velká-hromada-software, přijdu za třeba půl hodiny a všechno funguje. Nevylučuji, že jde o problém u mě, z divných věcí mi nejde spustit XCode (zkoušel jsem je i reinstalovat), chybový log: http://dl.getdropbox.com/u/400520/diskuse/2009-04-25-macosx-pkgmngmt/xcodelauncherror.txt
Dobře, schválně to zkusím:
sudo port self-update - hmm upgradlo se to z 1.700 na 1.710
sudo port install inkscape - skončí na hlášce:
i686-apple-darwin9-gcc-4.0.1: /usr/X11/lib/libXrandr.2.0.0.dylib: No such file or directory
make[4]: *** [libgnomeprintui-2-2.la] Error 1
make[3]: *** [all-recursive] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
Error: The following dependencies failed to build: libgnomeprintui libwpg libwpd poppler openjpeg poppler-data py25-lxml py25-xml
Error: Status 1 encountered during processing.
Myslím, že klíčová bude hláška:
objc[62825]: '/System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols' was not compiled with -fobjc-gc or -fobjc-gc-only, but the application requires GC
objc[62825]: *** GC capability of application and some libraries did not match
Což imho znamená, že tam máš nějakej mišung mezi Apple softwarem a něčím instalovaným z portů - na to se obecně musí dost dávat pozor...
> Asi jsem hodně zlenivělý z Ubuntu a sudo apt-get install fakt-velká-hromada-software
Ono je dost nesrovnatelné instalovat zkompilované binárky (to je totiž v podstatě jen rozbalení nějakého tohoto taru + doplnění metadat) a něco kompilovat ze zdrojáků, zvlášť, když sis tam zanesl nějakej zmatek :)
"sudo port install inkscape" jsem nemohl nevyzkoušet, přestože mi to nainstalovalo snad polovinu všeho GNU SW :) - celkem 117 balíčků :) - ale vše bez problémů:
# sudo port installed | grep inkscape
inkscape @0.46_8 (active)
... a dokonce to bez problémů běží ... i když moc nechápu, proč na Maca instalovat Inkscape :)
> Což imho znamená, že tam máš nějakej mišung mezi Apple softwarem a něčím instalovaným z portů - na to se obecně musí dost dávat pozor...
Je na to nějaký doporučení, na co přesně si mám příště dávat pozor? :-)
> Ono je dost nesrovnatelné instalovat zkompilované binárky (to je totiž v podstatě jen rozbalení nějakého tohoto taru + doplnění metadat) a něco kompilovat ze zdrojáků, zvlášť, když sis tam zanesl nějakej zmatek :)
Uznávám že je to asi nefér srovnání, s pravidelnou instalací softu kompilováním nemám zkušenosti, Ubuntu má binární balíčky. Gentoo jsem zkoušel jen jako pokus na pár dní, než mi došlo, že až tak moc velký nadšenec teda nejsem abych čekal třeba deset hodin než se zkompiluje a nainstaluje něco většího. :-)
> "sudo port install inkscape" jsem nemohl nevyzkoušet, přestože mi to nainstalovalo snad polovinu všeho GNU SW :) - celkem 117 balíčků :)
Právě proto, že to má hromadu závislostí jsem to zkoušel, mi bylo jasný, že mi to neprojede. :-)
> Je na to nějaký doporučení, na co přesně si mám příště dávat pozor? :-)
No hlavně pečlivě sledovat, jaké věci se používají - jestli z portů nebo od Applu. Já jsem třeba špekuloval nad tím, jak pomocí portů nainstalovat nějaké knihovny pro Applí python - a pak jsem to vzdal s tím, že by to vnášelo zmatek a nainstalovat python z portů a do něj tu knihovny.
Myslím, že dokumentace k MacPorts popisuje, na co je potřeba dát pozor.
> Právě proto, že to má hromadu závislostí jsem to zkoušel, mi bylo jasný, že mi to neprojede. :-)
Sorry, to "nemohl vyzkoušet" tam být nemělo, to byl překlep. Vyzkoušel jsem to, jede to, vše bez problémů. Jak jsem uvedl předtím:
# sudo port installed | grep inkscape
inkscape @0.46_8 (active)
Všech těch 117 potřebných balíků se bez problémů přeložilo a nainstalovalo.
> Uznávám že je to asi nefér srovnání, s pravidelnou instalací softu kompilováním nemám zkušenosti, Ubuntu má binární balíčky.
Je :)
MacPorts mají asi taky nějaký binární balíčky:
#man port
[...]
-b binary-only mode (build and install from binary archives, ignore source, abort if no archive present; do not create/recreate
binary archives from source) (only applies when archive mode is enabled)
ale zkušenost s tím nemám.
Jinak používám FreeBSD, takže s kompilací zkušenosti mám - a právě MacPorts mi přijdou trochu pokročilejší než FreeBSD ports.
> No hlavně pečlivě sledovat, jaké věci se používají - jestli z
> portů nebo od Applu. Já jsem třeba špekuloval nad tím, jak pomocí
> portů nainstalovat nějaké knihovny pro Applí python - a pak jsem
> to vzdal s tím, že by to vnášelo zmatek a nainstalovat python z
> portů a do něj tu knihovny.
> Myslím, že dokumentace k MacPorts popisuje, na co je potřeba dát
> pozor.