Dne 22. října 2009 12:42 Podlesak Kamil <kamil.podle...@ips-ag.net> napsal(a): > > Naopak! Prave ze Lotus Notes jsou k dispozici jako rpm i deb a se spravnymi > zavislostmi. Prave proto doslo k zminovanemu problemu. Teoreticky by stacilo, > kdyby v zavislostech byla uvedena presna verze - jenomze bohuzel to by ve > stavajicich balickovacich systemach zanamenalo jen to, ze by se knihovna > nesmela updatovat.
Rouzmim, no to se take nekdy stane. Tezko rici kde je chyba zda spatny update nebo spatne pripraveny jar. Obecne by pri update nemelo dojit k rozbiti API, zejmena kdyz se instaluje oprava. a jedna se zvyseni verze...treba 1.3.1 na 1.3.2. Gtk2 je ale slozita zalezitost :( > > Z techto duvodu mivaji komercni aplikace vlastni instalator, nebo alespon > balicek bez zavislostmi - vsechny knihovny maji vlastni v takovych verzich, o > kterych vi ze funguji a jsou otestovane. Presne jako se to dela v Jave. > > Microsoft samozrejme na tento problem narazil uz hodne, hodne davno a jeho > reseni bylo jednim ze zakladnim pozadavku na .NET - takze umoznuje mit k > dispozici mnoho verzi jedne knihovny, pricemz ruzne aplikace pak pouzivaji > ruznou verzi. > Dokazu si predstavit, ze by balickovaci systemy linuxovych dristribuci > podobnou funkcionalitu umoznily. Vyzadovalo by to ale nekolik nepeknych hacku > a tvrde by to narazilo na zastance tvrde linie (aneb "kdyz je chyba v > aplikaci, ma se opravit aplikace, ne zavadet nejake obezlicky"). I v linuxu je mozne mit vice verzi jedne knihovny pohromade. Jde o to jak se udela balicek. Pokud se knihovna (at uz .so nebo .jar) ulozi pouze s verzi napr /usr/lib64/libgpm.so.1.19.0 tak neni problem inastalovat vedle toho jinou verzi. Nicmene vetsinou si knihovna nainstaluje take simlinky /usr/lib64/libgpm.so -> libgpm.so.1.19.0 /usr/lib64/libgpm.so.1 -> libgpm.so.1.19.0 Program ktery knihovnu pouzije pak linkuje simlink rpm -qR mc | grep gpm libgpm.so.1()(64bit) Vyhodou pak je, ze je mozne knihovnu gpm preinstalovat, pokud se jedna o stejnou Major verzi. a zaroven je v systemu omezeni ze mc je zavisle na verzi 1 knihovny libgpm. Pokud je knihovna neukaznena, tak je nutne linkovat plnou verzi.. Stejne je to mozne udelat i v jave. Instalovat s konkretni verzi, vyzadovat kokretni verzi a nepouzivat simlinky :) P.N.