abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 0
dnes 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
včera 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 8
včera 15:30 | Zajímavý projekt

Společnost Jolla oznámila v příspěvku Case study: Sailfish Watch na svém blogu, že naportovala Sailfish OS na chytré hodinky. Využila a inspirovala se otevřeným operačním systémem pro chytré hodinky AsteroidOS. Použita je knihovna libhybris. Ukázka ovládání hodinek na YouTube.

Ladislav Hagara | Komentářů: 8
včera 14:15 | Nová verze

Byla vydána verze 7.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Jedná se o první stabilní verzi nejnovější větvě 7.1. Přehled novinek v dokumentaci. Podrobnosti v ChangeLogu. K dispozici je také příručka pro přechod z PHP 7.0.x na PHP 7.1.x.

Ladislav Hagara | Komentářů: 2
včera 12:55 | Nová verze

Google Chrome 55 byl prohlášen za stabilní. Nejnovější stabilní verze 55.0.2883.75 tohoto webového prohlížeče přináší řadu oprav a vylepšení (YouTube). Opraveno bylo také 36 bezpečnostních chyb. Mariusz Mlynski si například vydělal 22 500 dolarů za 3 nahlášené chyby (Universal XSS in Blink).

Ladislav Hagara | Komentářů: 4
včera 11:55 | Pozvánky

Máte rádi svobodný software a hardware nebo se o nich chcete něco dozvědět? Přijďte na 135. sraz spolku OpenAlt, který se bude konat ve čtvrtek 8. prosince od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Sraz bude tentokrát tématický. Bude retro! K vidění budou přístroje jako Psion 5mx nebo Palm Z22. Ze svobodného hardwaru pak Openmoko nebo čtečka WikiReader. Přijďte se i vy pochlubit svými legendami, nebo alespoň na pivo. Moderní hardware má vstup samozřejmě také povolen.

xkucf03 | Komentářů: 0
včera 00:10 | Nová verze

Byla vydána verze 3.2 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata. Z novinek lze zmínit například podporu protokolů DNP3 a CIP/ENIP, vylepšenou podporu TLS a samozřejmě také aktualizovanou dokumentaci.

Ladislav Hagara | Komentářů: 0
1.12. 21:00 | Nová verze

Byla vydána beta verze Linux Mintu 18.1 s kódovým jménem Serena. Na blogu Linux Mintu jsou hned dvě oznámení. První o vydání Linux Mintu s prostředím MATE a druhé o vydání Linux Mintu s prostředím Cinnamon. Stejným způsobem jsou rozděleny také poznámky k vydání (MATE, Cinnamon) a přehled novinek s náhledy (MATE, Cinnamon). Linux Mint 18.1 bude podporován až do roku 2021.

Ladislav Hagara | Komentářů: 0
1.12. 16:42 | Nová verze

Byl vydán Devuan Jessie 1.0 Beta 2. Jedná se o druhou beta verzi forku Debianu bez systemd představeného v listopadu 2014 (zprávička). První beta verze byla vydána v dubnu letošního roku (zprávička). Jedna z posledních přednášek věnovaných Devuanu proběhla v listopadu na konferenci FSCONS 2016 (YouTube, pdf).

Ladislav Hagara | Komentářů: 0
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 763 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Univerzálnost zdrojových kódů

2.7.2010 18:28 DWD | skóre: 16 | blog: papiry
Univerzálnost zdrojových kódů
Přečteno: 517×
Hotový balík můžeme používat jenom pro takovou distribuci a verzi Linuxu, pro kterou je udělaný, protože je kompilovaný proti knihovnám, které jsou v tomto Linuxu. Narozdíl od zdrojového kódu, který ještě není kompilovaný. Ten je možné použít pro různé Linuxy, protože se to vždycky nakompiluje proti takovým knihovnám, které tam jsou. Zdrojový kód je proto univerzální a přizpůsobuje se to konkrétnímu Linuxu až při kompilování nebo výrobě balíku. To se aspoň všude tvrdí. To, že je narozdíl od hotového balíku použitelný pro všechny Linuxy. Ale začínám o tom pochybovat, tak jsem se chtěl zeptat, co je na tom pravdy. Začínám se zajímat o kompilaci a o balení balíků ze zdrojových kódů. Během toho si to vždycky vyžádá nainstalovat nějaké balíčky, většinou devel-knihovny a jiné věci. Často to po nás chce doinstalovat i určité verze těch balíků. Proto je dost pravděpodobné, že takový balík v naších repozitářích ani nebude. Zdrojový kód potom může být pro některé Linuxy nepoužitelný. Kde je potom ta univerzálnost zdrojových kódů? Nebo aby takový zdrojový kód byl pro nás použitelný, museli bychom chybějící vyžádané balíčky získat z dalších zdrojových kódů. Tyto další zdrojové kódy si taky můžou vyžádat něco, co v repozitářích nemáme a tak můžeme nakonec překompilovat třeba i půlku systému. Potom místo, abychom zdrojový kód programu přizpůsobovali našemu Linuxu, tak přizpůsobujeme Linux zdrojovému kódu programu. To je potom to samé, jako pokoušet se instalovat balík, který není určený pro naši distribuci nebo verzi Linuxu. Taky si to vyžádá závislosti, které v repozitářích nemáme, ty bychom taky řešili balíkama z jiného Linuxu, ty si taky něco vyžádají a tak dále. Nakonec překopeme skoro celý systém. Nevidím v tom rozdíl. Při zpracovávání zdrojových kódů taky v hodně případech překopeme i polovinu Linuxu.
Jsem kretén, který ví lautr hovno o Linuxu a o počítačích vůbec.

Odpovědi

rADOn avatar 2.7.2010 19:46 rADOn | skóre: 44 | blog: bloK | Praha
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
Mas v tom peknej hokej, jako obvykle :-) si pletes balickovani a kompilovani.
…protože se to vždycky nakompiluje proti takovým knihovnám, které tam jsou…
Zapominas na to nejdulezitejsi - musis mit takovy knihovny kterym kompilovany program rozumi. Pokud se nevratnym zpusobem zmeni API, musis program prepsat aby novemu API rozumel. API je definovany v hlavickovych souborech - to jsou ty -devel balicky. Kdyz ti to proti nim zkompilovat nejde, neznamena to ze by kompiler nemohl udelat binarku, ale ze by takova binarka nesla slinkovat a tudiz by byla na prd. Zdrojak tedy neni univerzalni, je ale mnohem flexibilnejsi, protoze API knihoven se (pokud je nepisou prasata) meni mnohem mene nez ABI binarek. Krome toho pri kompilaci muzes obvykle linkovani nekterych knihoven uplne zrusit - pokud funkci kterou poskytuji nepotrebujes a program s tim pocita.

Strucna verze: Je to slozity. Zvykni si. Kdyby to bylo jednoduchy, zadny balickovaci systemy by nebyly potreba.
"2^24 comments ought to be enough for anyone" -- CmdrTaco
2.7.2010 20:09 fraxinus | skóre: 20 | blog: fraxinus
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
Áno. Je to skutočne tak. Týka sa to ale len jazykov ktoré kompilujú do natívneho kódu (C, C++, Pascal). Ak ti to vadí, mohol by si prejsť na jazyky ktoré kompilujú do nejakej virtual machine napr Java, alebo prejsť na interpretované jazyky (JavaScript, Perl, PHP, ...). V tom prípade je jedinou podmienkou mať runtime VM ako vyžaduje autor softvéru resp. rovnaká verzia interpretra. Ovšem aj tam môže nastať prípad že máš program pre Perl 0.1 z roku 1987 a tak starý interpreter už na tvojom OS nie je podporovaný. Ďalšou možnosťou je virtualizovať alebo emulovať danú architektúru (dosbox).

Majme príklad. Program Foo 1.0 vytvoril niekto v roku 1993. Používa knižnicu libbar-0.1.2. Potom vývoj programu Foo ukončil. Dnešná libbar má verziu 2.5.8 a má už dávno úplne iné API. Ty chceš nejakým spôsobom rozbehať program Foo 1.0 ale na tvojom systéme libbar-0.1.2 už nerozbeháš lebo používa registre ktoré boli len na 286-tkách. V tom prípade sa to naozaj nedá.

Ak máš nejaké súčasný OS s podporou 2 roky a chceš rozbehať program ktorý vyžaduje knižnicu ktorú daný OS nepodporuje (a je jedno či je to knižnica z pred dvoch rokov alebo z pred 20tich) tak ten systém to neumožňuje. Každý operačný systém obsahuje len istú mieru spätnej kompatibility pretože udržiavať viacero verzií je extrémne náročné.

Proste sa s tým zmier. Alebo prejdi na OS ktorého hlavným princípom je spätná kompatibilita všetých programov a všetkých knižníc od verzie 0.1 až po súčasnosť. Môžeme ti pomôcť s konkrétnymi problémami ale to je asi tak všetko.
3.7.2010 15:23 DWD | skóre: 16 | blog: papiry
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů

Jestli tomu dobře rozumím, tak žádný program není na pořád. To jsem měl vědět hned, než jsem ten počítač kupoval. To bych se na všechny počítače vybodnul. V tom případě nemělo cenu si počítač pořizovat. Měl jsem se vykašlal na celý počítač hned a místo používání počítače jsem si měl najít jiný způsob. Já potřebuji něco, na co se můžu spolehnout, že mi bude fungovat pořád nebo když se zkazí, můžu kdykoliv vyměnit a funguje dál. Prostě něco, na co se můžu spolehnout, že můžu kdykoliv použít. A ne něco, co mi může být kdykoliv znemožněné používat. Například jsem chtěl některé věci řešil pomocí počítače. K tomu bych potřeboval nějaké programy, které by to uměly. Pracně si zjistím, které programy umí to, co potřebuji, seženu je, naučím se s nimi zacházet, všechno nastavím, navrhnu a se vším si dám hodně práce. Budu ty programy potřebovat, protože všechno budu mít postavené na tom. Později, až mi přestane fungovat počítač, budu muset koupit nový. Stejný počítač už neseženu, už budou novější typy a proto operační systém, který mám, mi do toho nového počítače nemusí pasovat, kvůli podpory hardwaru. Proto budu muset vyměnit taky operační systém za nový. V novém operačním systému zase nebude možné rozchodit ty programy, které potřebuji a nepomůžou ani zdrojové kódy, ze kterých bych buď kompiloval nebo vyráběl balíky. Musel bych sehnat nové verze těch programů. Ale co když nové verze těch programů mi nebudou vyhovovat nebo dokonce nebudou existovat vůbec, protože budou ukončené. To bych byl v pytli, protože bych nemohl používat programy, na kterých bych byl závislý. Byl bych na nich závislý, protože bych měl všechno postavené na nich. Všechno, co jsem za celou dobu pracně postavil na počítačích, by šlo do .... Vymstilo by se mi to, že bych měl všechno postavené na počítačích.

V takovém případě, že programy nejsou na pořád, nemá cenu něco řešit pomoci počítačů a mít něco postavené na počítači. V tom případě budu muset zavrhnout dělat něco pomoci počítačů a pomocí softwarů. Budu muset s počítačem skončit. Budu si muset zavčasu najít za počítače náhradu. Něco, co bude umět to, co potřebuji a přitom je na to větší spolehnutí, než na počítač a software.

Jsem kretén, který ví lautr hovno o Linuxu a o počítačích vůbec.
3.7.2010 15:33 chrono
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
Len málo programov komunikuje priamo s hardvérom. Väčšina knižníc (v konečnom dôsledku) potrebuje len glibc, alebo podobné veľmi často používané knižnice a tie sú buď stabilné, alebo nie je problém mať v počítači viac verzií, takže ak sa uspokojíš so starou verziou programu a nevadí ti, že budeš musieť mať nainštalovaných viac verzií nejakej knižnice, tak by problém nemusel nastať (navyše nie je problém všetko potrebné nainštalovať do nejakého adresára, takže staré a nové verzie knižníc, konfiguračných súborov... nemusia byť v rovnakých adresároch.

Inak skôr či neskôr sa pravdepodobne presadia procesory, ktoré nebudú spätne kompatibilné s procesormi 8086 a preto prestane fungovať obrovské množstvo starých programov, takže už je asi najvyšší čas hľadať si za počítač nejakú náhradu (alebo zarobiť strašne veľa peňazí a môžeš platiť niekoho, kto sa postará o to, aby nejaký starý program fungoval aj na novom počítači, s novým OS, novými knižnicami..., to sa samozrejme ľahšie robí v prípade, keď pre ten program existujú zdrojové kódy, takže kopec shareware, freeware... bez emulátorov prestane fungovať úplne).
3.7.2010 15:44 DWD | skóre: 16 | blog: papiry
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
Majme príklad. Program Foo 1.0 vytvoril niekto v roku 1993. Používa knižnicu libbar-0.1.2. Potom vývoj programu Foo ukončil. Dnešná libbar má verziu 2.5.8 a má už dávno úplne iné API. Ty chceš nejakým spôsobom rozbehať program Foo 1.0 ale na tvojom systéme libbar-0.1.2 už nerozbeháš lebo používa registre ktoré boli len na 286-tkách. V tom prípade sa to naozaj nedá.
Problém takového typu by se nemusel stát u programu, které nepoužívají žádnou knihovnu, ale mají všechny funkce, které používají, obsažené přímo v tom programu. Je to pravda?
Jsem kretén, který ví lautr hovno o Linuxu a o počítačích vůbec.
pitomeczech avatar 3.7.2010 16:58 pitomeczech | skóre: 3
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
Problém takového typu by se nemusel stát u programu, které nepoužívají žádnou knihovnu, ale mají všechny funkce, které používají, obsažené přímo v tom programu. Je to pravda?
Fungují do té doby, dokud se zásadě neobmění pro ten program důležitá část v OS.

V každém případě OpenSource kód si můžeš upravit i za 20let a navíc si můžeš zkontrolovat jestli v něm není škodlivý kód. Nechci dělat chytrýho taky nejsem programátor ale tohle chápu. Problém bude spíše v nás!

3.7.2010 17:22 VSi | skóre: 28
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
Na druhou stranu za 20 let už ten kód nemusí jít zkompilovat aktuálními verzemi kompilátoru, nebo bude třeba použít všechny knihovny z doby, kdy vznikal, kód, protože API knihoven se mezitím nekolikrát změnilo. V takovém případě může být nakonec jednodušší to celé napsat znovu, protože na ten program můžou být kladeny požadavky na spolehlivost, a k tomu nestačí, že se ho "povede zkompilovat", ale musel by se nejspíš projít celý kód.

Jako problém (v některých případech) linuxu obecně vnímám to, že není definována nějaká základní skupina knihoven vč. jejich API, která by byla na všech distribucích dostupná. Samozřejmě to neznamená zamrznutí na aktuálních verzích, jen by v případě změn API musela zůstat zachována i ta stará verze jako nějaká vrstva kompatibility.

Na linuxu (na aktuální verzi distribuce) je problém snadno použít 5 let starou verzi aplikace, která se mezitím vyvíjela. Můžu jí chtít použít protože obsahuje nějaké funkce, které v novější verzi nejsou, nebo z jiného důvodu. Stejně tak je problém snadno (kdyby stačilo znovu zkompilovat, tak je to ještě OK, ale narazíme na nekompatibilitu knihoven, tj. nutnost část aplikace přepsat) nainstalovat dvě verze téže aplikace najednou.

Je sporné, jestli je takový přístup vhodný (viz nedávná diskuse ohledně statické kompilace programů). Pro opensource aplikace, které jsou trvale udržovány v repozitářích distribucí je současný stav na linuxu perfekrní a v podstatě bezproblémový. Ale pro málo používané nebo unikátní věci, co někde 10 let běží a pak je chci na novém systému, to není úplně vhodné a vznikají problémy. To samé uzavřené aplikace. Můžete sice říkat, že kdyby byly otevřené tak by to bylo lepší a vyřešilo by to pomalu všechny problémy světa, ale prostě uzavřené věci tu z nějakého důvodu jsou, v reálném světě se používají v obrovské míře, a jen tak se to ai nezmění.

Přístup MS Windows je podle mě o dost lepší pro uzavřené aplikace, nebo pro ty případy co jsem zmínil – možnost snadné instalace velmi staré verze od které mi stačí instalátor, mít nainstalováno více verzí nějaké aplikace také nebývá problém. Je fakt, že programy vytvořené pro Windows 95 lze většinou spustit i na nejnovějších Windows. Na druhou stranu pokud to nejde, tak oprava ne bez zdrojového kódu nemožná. Je ale třeba si uvědomit, že v praxi je realizace takové opravy často utopická věc.

Microsoft se hodně snaží o zpětnou kompatibilitu, na linuxu se to bere stylem "všechno překompilujeme, a když bude třeba upravíme zdrojáky, aby to chodilo" (ale už se nemluví o tom, že tenhle přístup nejde použít pro uzavřené nebo málo používané aplikace). Chtělo by to nějak spojit výhody obou přístupů.
3.7.2010 18:16 chrono
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
Na linuxu (na aktuální verzi distribuce) je problém snadno použít 5 let starou verzi aplikace, která se mezitím vyvíjela. Můžu jí chtít použít protože obsahuje nějaké funkce, které v novější verzi nejsou, nebo z jiného důvodu. Stejně tak je problém snadno (kdyby stačilo znovu zkompilovat, tak je to ještě OK, ale narazíme na nekompatibilitu knihoven, tj. nutnost část aplikace přepsat) nainstalovat dvě verze téže aplikace najednou.
To je pravda len čiastočne. Keď program používa knižnice, pri ktorých si autor dá záležať na spätnej kompatibilite, tak sa dá používať aj starý program.

Napr. práve teraz som skúšal program gftp z Mandrake 10 (skompilované to bolo 18. januára 2004) a stále funguje aj keď mám všetky knižnice, ktoré používa, v najnovšej verzii (používa napr. GTK+2, zlib, pcre, libxml2, kopec X knižníc..., jediná špeciálna knižnica, ktorú to potrebuje je OpenSSL-0.9.7, ale asi mám nainštalovanú nejakú veľmi starú binárku, ktorá tú knižnicu potrebuje, takže mi to po rozbalení .rpm súboru funguje).

Funguje mi aj gftp z Mandrake 8 (skompilované 27. apríla 2001). Tam je výrazne menej závislostí, špeciálna knižnica je tentoraz GTK 1, ale tú knižnicu mám nainštalovanú kvôli XMMS, takže aj tá verzia mi funguje po rozbalení balíka.

Samozrejme je kopec knižníc, pri ktorých autorom vôbec nezáleží na spätnej kompatibilite a pri zmene API dokonca ani nezmenia verziu, takže je dosť veľký problém mať nainštalovaných viac verzií tej knižnice, ale také niečo sa (našťastie) pri používaných knižniciach stáva málokedy.
Martin Tůma avatar 4.7.2010 08:45 Martin Tůma | skóre: 38 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
Jako problém (v některých případech) linuxu obecně vnímám to, že není definována nějaká základní skupina knihoven vč. jejich API, která by byla na všech distribucích dostupná. Samozřejmě to neznamená zamrznutí na aktuálních verzích, jen by v případě změn API musela zůstat zachována i ta stará verze jako nějaká vrstva kompatibility.

Linux ale takovou standardní množinu definovanou má - POSIX

To, že jiné, "běžnými programy" používané, knihovny mění svoje API už je jiná věc. Ale to není problém linuxu, ale autorů té knihovny a je to na platformě nezávislý problém. I linux umožňuje statické linkování nebo použití vlastních verzí dané knihovny, které jsou distribuovány s programem samotným jako se používá ve Windows.

Každý má právo na můj názor!
4.7.2010 14:16 VSi | skóre: 28
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
Ano, o POSIX vím, ale podle mě se ukazuje, že pro desktopové a jiné používané aplikace je POSIX samotný "málo". Jako minimální nízkoúrovňový standard, který vyhoví pro celé spektrum nasazení linuxu je to vyhovující.

Představoval bych si, že věci jako openssl, grafické toolkity apod. by měly vždy v určitém okamžiku vydanou "stabilní verzi" se stabilním API. A byla by "jistota" že serverové a desktopové distribuce budou mít veškeré verze těchto knihoven od nejstaší až po aktuální. Ty staré verze by mohly být realizované jen jako vrstvy kompatibility nad těmi novými. Nemusely by být nutně všechny verze nainstalované, ale měla by být jednoduchá možnost, jak doinstalovat určitou verzi od každé knihovny. Záleží jak se které věci rychle vyvíjí, ale ty verze by mohly být třeba po 1-2 letech. Neznamená to, že jedna verze by byla "zmražená", jen by se nesmělo měnit API. Teoreticky je tohle možné už dnes, ale problém je v tom, že API knihoven se mění chaoticky a možná zbytečně často, a pak distribuce nemají balíčky pro starší verze knihoven, protože API se měnilo každou chvíli a muselo by jich být strašně moc.

Samozřejmě by tohle autorům knihoven nebo správcům distribucí přidělalo dost práce, protože při změně API knihovny by se musely udržovat ty kompatibilní vrstvy, aby všechny starší verze API fungovaly. Možná je to úplně proti ideologii současných distribucí linuxu, která mi přijde jako "každý si může dělat co chce, to je hlavní. že je v tom bordel, to až tak nevadí". Možná se tohle snaží změnit projekt Linux Standard Base?

Upozorňuji, že moc do hloubky tomu nevidím, takže jsem možná napsal nesmysl. Ale vycházím z toho, jak přibližně to funguje na Windows, kde si většina aplikací vystačí s Win API, popř. dotNET, u kterého je teprve 3. verze. Jistě, že má konkrétní podoba WinAPI a dotNET hromadu problémů, ale ideově mi to přijde jako dobré řešení.

Martin Tůma avatar 4.7.2010 14:36 Martin Tůma | skóre: 38 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů

To že Windows jsou na tom se zpětnou kompatabilitou mnohem lépe než linux neni žádný veřejný tajemství1 a je to taky jeden z hlavních důvodů, proč pro linux neexistuje spousta komerčního SW. Otázka ale je, jestli to při stylu vývoje linuxu jde dělat stejně a zda to vůbec chceme.

1) Vzpomínám si dokonce, jak jsem někdy v roce 2007 pro lazení školního programu na SOJe používal debuger z roku 1987! Binárku z roku 1987!!!

Každý má právo na můj názor!
5.7.2010 19:35 Jiří J. | skóre: 34 | blog: Poutník | Brno
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů

No kompatibilita na nějaké základní úrovni tam je, ale nepřešel jsem z win7 na winXP kvůli hrám jen tak bezdůvodně, na win7 jich spousta nefungovala ani v "režimu kompatibility" :-)

Víra je firma si myslela, že něco je pravdivé. LMAO -- “zlehčovat mého osla”
3.7.2010 17:42 fraxinus | skóre: 20 | blog: fraxinus
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
Problém takového typu by se nemusel stát u programu, které nepoužívají žádnou knihovnu, ale mají všechny funkce, které používají, obsažené přímo v tom programu. Je to pravda?
Vobec nie. Co ak libbar-0.1.2 obsahovala zapis udajov programu Foo na 5.25" disketu. Dneska sa uz diskety ani nepouzivaju. Keby bol program skompilovany staticky, resp. ten program by si riesil zapisovanie na 5.25" disketu po svojom, dnes uz by to nefungovalo vobec.

A tu pekne vydno vyhody dynamickeho linkovania. libbar dajme tomu obsahuje jedinu funkciu a to ZapisDataProgramuFooNaDisketu. Dnes po 20 rokoch staci napisat "falosnu libbar" kde bude funkcia ZapisDataProgramuFooNaDisketu ale naprogramujes to tak aby tie data ulozil na disk alebo na usb kluc. Potom by teoreticky nebolo treba prekompilovat program Foo lebo on len vola tu funkciu a je mu jedno co sa tam s tym deje.

Inak nic nie je vecne, to vedel uz Dzingischan. Povedz o aky problem ide, mozno poradime konkretne. Ak by som napr. robil casovu schranku tak pocitac je fakt nevhodny. Ziaden bezny pocitac 200 rokov nevydrzi. Pozri sa ale na sondu Voyager. Vypustili ju v roku 1977 a po 33 rokoch ten pocitac stale funguje. A softver na nom menili uz mnoho krat.
4.7.2010 16:11 Dan Horák | skóre: 20
Rozbalit Rozbalit vše Re: Univerzálnost zdrojových kódů
V Linuxovém světě existují 2 věci, které se snaží s různou úspěšností tento problém řešit - LSB a enterprise distribuce.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.