Pokud do GCC pridate patche na svuj custom cpu ci jine zmeny, tak musite zverejnit patche. Plati to pro GPL i LGPL.
S LGPL staci kdyz reknete ze pouzivate verejnou verzi, as-is, ale to je nepouzitelne u jabka, kdyz potrebuji do toho rejpat a treba mnoho kodu neni uplne arm64 friendly z ruznych duvodu.
Nemusíte. Musíte akorát poskytnout zdrojáky tomu komu poskytnete binárky. Když chtěl Apple distribuovat jádro nebo kompilátor, na tom hle nezáleží (kdyby dal ty zdrojáky zákazníkům, bylo by to, jako by je zveřejnil). Ale když poskytujete software jako službu, je to podstatný rozdíl.
Každopádně podpora pro vlastní CPU by bylo to poslední, co by Applu vadilo, zejména když tenkrát žádné vlastní CPU neměl. Applu vadilo, že by musel dát zákazníkům to všechno ostatní, takže by pak měl daleko těžší prodávat to. Nebo by musel složitě vyrábět nějaká rozhraní, aby oddělil GPL kód od svého proprietárního kódu, což by ovšem byla technicky zbytečná práce navíc, a právně by to bylo velmi nejisté.
Rozdíl mezi GPL a LGPL je v tom, že GPL se vztahuje i na díla odvozená, takže když použijete GPL na knihovnu, záleží na tom, jak moc je od ní odvozená aplikace, která ji používá. Třeba když napíšete knihovnu na kompresi a pak kolem ní napíšete CLI wrapper, je to jistě dílo odvozené a muselo by být pod GPL. No a nejistota, kam až sahá tahle virálnost GPL, by knihovnám neprospívala. LGPL se nevztahuje na odvozená díla, takže je explicitně řečeno, že když použijete LGPL knihovnu, nemusí být váš program pod LGPL licencí.
Vy jste nepochopil, ze se bavime o kompilatoru (gcc). Tak zacnete uvazovat znova.
Zdrojaky by jste musel poskytnout tedy tomu, kdo ma XCode, protoze jinak se bezne kompilator nedostane k uzivatelum - a neni v zajmu Applu poskytovat cokoliv komukoliv (hlavne ne v zdrojove forme, a hlavne nic predem - aby neslo zjistit na cem delaj).
O GCC se možná bavíte vy. Ostatní se baví o tom, proč Apple pro základ svého systému vybíral něco, co není pod GPL licencí – tedy proč zvolil FreeBSD a ne Linux. To, že se vyhnul GPL i u kompilátoru, a zvolil Clang/LLVM a ne GCC, svědčí spíš o tom, jak moc se chtěl Apple GPL vyhnout – i když u kompilátoru by mu GPL nejspíš nedělalo žádný problém. Není zas tak složité udělat IDE, které nebude odvozeným dílem od kompilátoru – což poznáte třeba tak, že žádné z nejpoužívanějších IDE není odvozené od nějakého kompilátoru.
hlavne nic predem
GPL nenutí nikoho něco poskytovat předem.
Lenze Apple povodne pouzival GCC, kedze Clang/LLVM este neexistoval.
A to, preco neskor presli na Clang je velmi jednoduche: Jobs osobne nenavidel GNU. A to preto, ze kedysi, ked NeXT prisiel s Objective-C, postavili to na GCC, distribuovali to ako proprietarny softver a na dvere im zaklopalo GNU, ze nie, nie, toto je odvodenina od GCC, musite zverejnit zdrojove kody. Jobsovi pravnici mu povedali to iste, tak to so skripanim zubov spravil -- v nutnom minime. T.j. sucastnou GNU GCC bol kompiler Objective-C, ale uz nie Objective-C runtime, takze aj tak to bolo mimo NeXT a neskor YellowBox a OSX nepouzitelne.
Na a ked Jobsa niekto nastval, tak ten spravil vsetko mozne, aby to zo svojich produktov dostal prec. To iste sa stalo napriklad aj Nvidii, preto od urciteho momentu Nvidia dostala v Apple stopku.
Ono je potřeba jít více do historie, okolo roku 1985 se Applu nepodařilo zlikvidovat konkurenční IBM PC a Steve Jobs asi i za to měl být odsunutý z funkcí s nejvyšším vlivem. Rozhodl se pro opuštění Apple a založil se skupinou svých odborníků z Apple firmu NeXT Computer. Zde se správně rozhodl, že je potřeba opustit jádro operačního systému založené na kooperativním multitaskingu a využil mikrojádra Mach vzniklého na Carnegie Mellon University. To pro POSIX obálku a drivery využívalo BSD. Firma NeXT pak použila na tu dobu revoluční model grafického rozhraní primárně založeném na vektorovém/škálovatelném základu vycházejícím z popisu tiskových stránek (Display PostScript, vývoj ve spolupráci s Adobe). Tato kombinace v systému NeXTSTEP přinela revoluci v grafickém výstupu a schopnost věrně zobrazovat grafiku stránky v DTP programech. Když jsem někdy okolo roku 1992/3 viděl x86 notebooky se systémem NeXTSTEP, tak přesto, že při otevírání složek a dalšího probíhaly plynule se zvětšující animace a další efekty, tak byl běh plynulý. Obecně jak proti tehdejšímu GNU/Linuxu tak Windows to po grafické stránce byla jiná třida. Pro implementaci vyšších vrstev byl vybraný jazyk Objective-C (spojení výhod Smalltalku s kompatibilitou s C). Jobs objective C koupil od jeho autorů a jako základ kompilátoru použil GCC, které mu umožnilo podporovat potřebné architektury a nabízelo optimalizaci kódu. Ale jak je u korporátně založených podnikatelů zvykem, Jobs chtěl držet Objective-C jako svůj majetek a tedy obejít licenci GCC, které získal díky otevřenému busisness modelu od Richardovi Matthew Stallmanovi a později Cygnusu/RedHatu zdarma. Vlastní parser musel pod GPL vrátit, ale runtime si držel a tedy GNU komunitě nebylo využití a rozšíření GCC k ničemu. Komunita musela začít s runtime znova. Když Apple doždímal OS 7 k smrti, tak nakonec povolali Jobse zpět. Ten pak Apple postavil na nohy a založil OS X na NeXTSETPu, Display Postscript nahradil PDF modelem a nenáviděné GCC, které mu umožnilo věškerý NeXT vývoj, ale vyžadovalo se dělit, pak nahradil vznikajícím a v té době horším LLVM a Clang, které mu umožnily se o to navíc, co přidají nad komunitní verzí, s nikým nedělit. Komunitu trochu krmí, aby se inovace od jiných do základu přidávali, ale optimalizace pro své procesory, pokud vím, nikdy komunitě, která pro ně na LLVM pracuje, nedali. Přesně model nechat živořit a nespolupracovat, který RMS přivedl busyness modelu GPL, který umožnil rovné využití výsledků mezi komunitou a mnoha i velkými firmami (IBM, tedy RedHat, tedy Cygnus - jehož vznik RMS zadotoval, Intel, AMD, a dalšími).
Zdroj: vzpomínky, čtené materiály a informace z průběhu vývoje, ozdrojováno z Wikipedie, její založené též podnítil Richard Matthew Stallman.
Podstatné je, že RMS busyness plán umožňuje spolupracovat i velkým firmám, u jiných než Copyleft licencí je ta spolupráce extrémně komplikovaná, více než na kód se nakonec zaplatí právníkům. Malí pak nemají šanci vůbec a univerzity jsou v zásadě jen zdrojem know how ale samy své výsledky nemohou prakticky využít.
Co se týče těch kdo nepřispívají, tak užitek sice mají, ale nemají vliv na vývoj projektu a tím je pro ně hodnota mnohem menší. Takže i Čínská firma Longson.cn (pokračování Institute of Computing Technology, Chinese Academy of Sciences) výsledky své práce s naplno nabízí do mainline jádra Linux atd...
Netvrdím, že je situace ideální, ale minimálně projekty mají šanci přežít. Srovnejte výsledky správy kódu v Microsoftu (převzatý kód Spyglass od Mosaic v začátku Internet Exploreru) a to jak KHTML ovládlo svět včetně další šance pro Microsoft. Bohužel to není GPL, takže opět časem možná budeme v pasti zavřeného kódu.
Moje shrnutí v aktualitách na stránce již nevyučovaného předmětu Open Source Programování.
Vliv na vývoj projektu není hodnotou pro drtivou většinu uživatelů (vč. firem).
Drtivá většina komerční spolupráce se děje mimo copyleft licence. Spolupráce firem na projektech je přeci v komerční oblasti naprosto běžná. Nevidím na tom nic komplikovaného. V různých konsorciích jsou často různé úrovně členství, jestli tou bariérou pro malé firmy myslíte členské poplatky...
Nevidím nic dobrého ani chytrého na tom, platit konkurenci vývoj... Mně ty náklady zůstanou, konkurence ale díky tomu produkuje levněji. Ve výsledku to brzdí vývoj a snižuje konkurenční prostředí.
Jak to, že Apple nedokázal vyvinout konkurenceschopné jádro OS a převzal otevřené BSD, které samo o sobě díky své licenci celkem živoří. Přitom ani Microsoft by se bez BSD stacku na Internet (s velkým zpožděním) nepřipojil. Google by také neměl Android a ani podvozek pod vyhledávač a ostatní služby.
https://w3techs.com/technologies/overview/web_server
https://en.wikipedia.org/wiki/TOP500
https://top500.org/lists/top500/list/2024/11/
Vše v IT by bylo bez RMS řádově dražší a svoboda by nebyla, každý by měl NDA, platil subskipce atd... Jak to chodí ve velkých firmách s dokonale uzavřeným modelem jsem mnohokrát od bývalých spolužáků slyšel a místo inovace je to často jen zmar. Takže přidejte odkazy na relevantní data. Jinak jak vidíte tak i OS X a iOS a další ke vzniku potřebovali invenci a nástroje z té sdílející komunity.
Jak to, že Apple nedokázal vyvinout konkurenceschopné jádro OS a převzal otevřené BSD, které samo o sobě díky své licenci celkem živoří....Jinak jak vidíte tak i OS X a iOS a další ke vzniku potřebovali invenci a nástroje z té sdílející komunity.
MacOS neběží na FreeBSD, ale na Darwinu, resp. XNU (což je Mach), který vyvinul NeXT, který Apple koupil a dál vyvíjel. Z FreeBSD tam pak dodali jen VFS, síť a snad i správu procesů (ale to se už dnes IMHO liší).
Nechce se mi do polemiky zda FreeBSD živoří, či ne, to bychom se museli podívat nejdříve na definici toho slova. Každopádně to, že je FreeBSD serverů méně než Linuxových zcela jistě není kvůli licenci.
Microsoft by se bez BSD stacku na Internet (s velkým zpožděním) nepřipojil.
To je čistá spekulace, se kterou nemohu souhlasit. MS by jistě nebyl bez Internetu, kdyby neměl BSD net stack. Buď by si něco koupili nebo by si vyvinuli vlastní, stejně jako to udělali ostatní :-)
Vše v IT by bylo bez RMS řádově dražší a svoboda by nebyla
To je také pouhá spekulace, která jde proti většinovému pravidlu v ekonomii, že konkurenční boj snižuje cenu a je rovněž motorem inovací.
Ano Cinanni skoro vse statni a z statnich UN davaji jako OS a casto rovnou na github, neco k sobe, dokonce Cisnka akdamie filmaru dava vsechny zdrojove videa a cele secenare k blenderu na net - takze si muzes vygeneropvat stejny film jako natocili, vetsinou kratky studenstky tak 5-15min - a zarovne se na tom ucit a muzes to i upravovat.
To same Deepseak atd. atd.
LOL v te dobe uz bykl i KDE-1 ktery byl mnohem lepsi nez MacOS, NexStep i windows ;-) - KDE-2 byla jeste hezci ;-)
V te dobe byl i BeOS - ten kopirtoval nexstep - imho NexStep kopiroval novou Amigu, nastupce workbenchge ... btw 16bit Amiga bytla drive nez nexstep co ;-) i AtariST bylo drive co ?
Steve Jobs byl zlodej asi jako Bill Gates, kradl a nebo kupoval - jen Stev Jobs byl jeste nechutny psychopat, co jej bavilo tyrat lidi a vyhazovat je jenh tak pro zabavu na hodinu z prace - lidi se jej v Apple bali potkat, aby je jen tak pro zabavu nevyhodil.
Jo a Jobs krom toho ze byl spychopat vubec technice nerozumel, za celym technickym stal Steve Wozniak
To mame jako VK a Telegram ze - Pavel Drulov je playboy co nevi vubec nic, byl hezkym manekynem, za tim vsim stoji v pozadi jeho BRACHA - ten to vse navrh a naprogramoval ;-) - a byl tak blby, ze misto aby sjizdel tu svoji agentku ci slapku v Dubaji a nebo ji vymenil, se ji nechal premluvit na vylet do Parize --- to s jeho brachou to meli tezsi, ten neni blazen a vi kam je pro nej bezpecne cestovat a kam ne ;-)
Aby sa mu nikto nehrabal v zdrojákoch. Skôr či neskôr by do GCC dali niečo, čo by tam Apple nechcel, takže by si musel urobiť vlastný fork, ale všetko by tak či tak musel zverejňovať, lebo by to stále bolo pod GPL. Takto si môže robiť s prekladačom, čo chce, a má pokoj. Nič nemusí zverejňovať.
Mimochodom, aj Sony v Playstation a Nintendo vo Switchi používajú FreeBSD. Môžu si to meniť ako chcú a predávať to, v čom chcú, a majú pokoj od povinného zverejňovania zdrojákov
Myslím, že aj Microsoft niekedy prejde na FreeBSD. Doplní si podporu pre DirectX a bežný používateľ ani neuvidí, že sa zmenilo jadro OS.
> Myslím, že aj Microsoft niekedy prejde na FreeBSD. Doplní si podporu pre DirectX a bežný používateľ ani neuvidí, že sa zmenilo jadro OS.
Podobné úvahy jsem slyšel ohledně Linuxu. Z hlediska driverů, jejich kompatibility a kompatibility aplikací by byl problém obojí, a celkem by mě to překvapilo. A možná GPL na kernel je ta nejmenší překážka. Dodat komerční produkt s kernelem Linuxu a non-GPL userspace zjevně problém není, Google to s Androidem zvládl.
Ostatně je to vidět na Wine, jak „snadné“ je vyměnit jádro pod Windows. Na Windows je podstatné to, jak drží zpětnou kompatibilitu včetně různých historických chyb, údajně jsou tam i výjimky pro konkrétní programy. Zreplikovat zdokumentované API nad jiným jádrem by byla jedna věc, ale zreplikovat to i s chybami a výjimkami, to by bylo ještě daleko náročnější.
Wine je jenom userspace. Operacni system ale tvori hlavne ovladace - a pokud mate nejaky obskurni zarizeni, ktere ma binarni drivery pro windows, tak vam Linux jadro s Wine moc nepomuze. Ostatne neni ani mnoho x86 notasu, kde by vsechno fungovalo na 100% v linuxu.
Jednu dobu existovala moznost loadovat windows drivery - myslim jen sitovek, protoze situace na trhu byla takova ze vyrobci delali jen ty win ovladace. To uz je mnohem lepsi priklad. Viz:
NdisWrapper
https://ndiswrapper.sourceforge.net/wiki/index.php/Main_Page
Apple sa nedávno zbavil miliónov 32 bitových aplikácií pre iOS aj macOS. Vývojár buď upravil a prekompiloval svoje aplikácie pre 64 bitový OS, alebo sa už nedala inštalovať na nový OS. A o pár rokov sa zbaví aj všetkých aplikácií pre Intel procesory.
Používatelia nepotrebujú milióny aplikácií. Potrebujú web prehliadač, mail klient, kancelárske programy a niečo a prezeranie obrazkov a videa a počúvanie hudby. K tomu niektorí potrebujú ešte niečo na úpravu obrazkov, videa a hudby. A zvyšok sú profesionálne aplikácie, ktoré vývojári aj tak upravia a skompilujú na 64 bitové.
Kvuli updatu aplikaci na novejsi MacOS minimum jsem prisel postupne o Whatsapp, Skype, a jeste neco. Ne - opravdu nemam v planu vyhodit ten pocitac, kdyz by slouzit k danemu ucelu mohl (v podstate instant messaging a sem tam nejake fota prijmout/poslat pres IM).
Takze sory jako - nebudu co par let menit hardware, a jeste software a sluzby... proto mam 32bit XP ve VM a tam i zustane, protoze to co se v nem dela, funguje na 100% kazdy den stejne.
Ano, je to intel, a je to late 2012 (15") + 2013 (13") retinovej MBP.
Protoze tohle na rozdil od display-flex vadnych 2016-2017 prezilo.
Ukaz mi jedinou aplikaci, ktera v dnesni dobe rekne, ze na W10 jako nepojede, ze chce vyslovene W11. A tohle je presne to, co dela Apple - a ten cyklus je velice umele zkracen za ucelem nasilne obmeny hw, ktera u win neni v takove kadenci. Ta uzavrenost jim proste dovoluje delat nehezke veci na svych uzivatelich.
Apple nepoužívá LLVM/clang jen na kompilaci C/C++ kódu, ale i na kompilaci shaderů a potom LLVM bitcode na native code přímo na zařízení při instalaci aplikace (třeba telefon nebo tablet). Toto by s GPL neprošlo (GPL komponenta v iPhone).
LLVM je celkem univerzální a Apple si platí svoje lidi co na tom dělají.