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í
×
dnes 15:44 | Nová verze

Byla vydána nová major verze open source komunikačního softwaru Jami (Wikipedie, GitLab). Její název je Free as in Freedom. Dřívější názvy projektu Jami byly SFLphone a následně Ring.

Ladislav Hagara | Komentářů: 0
dnes 00:33 | Zajímavý projekt

Společnost MNT Research má v plánu na Crowd Supply spustit kampaň na podporu open source notebooku MNT Reform. Vývoj notebooku lze sledovat na Mastodonu.

Ladislav Hagara | Komentářů: 12
dnes 00:11 | Zajímavý software

Chcete si zahrát víceuživatelský tetris v terminálu? Stačí spustit ssh netris.rocketnine.space. Na straně serveru běží netris. Zdrojové kódy v programovacím jazyce Go jsou k dispozici pod licencí GPLv3.

Ladislav Hagara | Komentářů: 0
včera 19:44 | Nová verze

Po čtyřech měsících vývoje od vydání verze 4.10 byla vydána nová verze 4.11 svobodné náhrady proprietárních BIOSů a UEFI coreboot (Wikipedie). Na vývoji se podílelo 130 vývojářů. Provedli 1630 změn. Přidána byla podpora pro 25 mainboardů.

Ladislav Hagara | Komentářů: 0
včera 16:22 | Nová verze

Byla vydána verze 1.6.0 emulátoru terminálu Terminology (GitHub) postaveného nad EFL (Enlightenment Foundation Libraries). Přehled novinek v poznámkách k vydání.

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

Vydání verze 1.0 svobodného multiplatformního vektorového grafického editoru Inkscape se blíží. Registrovaní uživatelé mají možnost hlasovat o obrázku, který bude zobrazován v okně O Inkscapu. Vybírá se ze 124 návrhů.

Ladislav Hagara | Komentářů: 8
včera 10:55 | Nová verze

Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. V první desítce se nic nezměnilo. Nejvýkonnějším superpočítačem zůstává superpočítač Summit. Nejvíce superpočítačů v TOP500 má Čína (228). Český superpočítač Salomon klesl na 375. místo. Další přehledy a statistiky na stránkách projektu. V aktuálním žebříčku GREEN500 (GFlops/watts) superpočítač Summit klesl na 5. místo.

Ladislav Hagara | Komentářů: 3
včera 02:00 | Zajímavý článek

V novém příspěvku na blogu Purismu se můžete dočíst, jak pokračoval vývoj softwaru Librem 5 v říjnu. Vývojáři optimalizovali linuxové jádro a ovladače pro snížení spotřeby telefonu. Mezi další změny patří lepší integrace mezi aplikacemi pomocí knihovny libfolks, byly přidány nové funkce klávesnice, nastavení, shellu, kompozitoru a opraveno plno chyb.

okias | Komentářů: 3
včera 01:55 | Nová verze

Na Humble Bundle byla spuštěna akce Humble Book Bundle: Cybersecurity 2019 by Packt. Všech 22 videokurzů a elektronických knih věnovaných kybernetické bezpečnosti od nakladatelství Packt lze koupit za 15 dolarů. Peníze lze libovolně rozdělit mezi nakladatelství Packt, neziskovou organizaci Arthritis Foundation a Humble Bundle.

Ladislav Hagara | Komentářů: 0
18.11. 23:22 | Zajímavý článek

Ben Cox v článku Jak psát ovladače nepodporovaných USB zařízení pro uživatelský prostor ukazuje, jak reverzním inženýrstvím dospěl k vlastnímu ovladači userspace-vga2usb pro převodník a frame grabber Epiphan VGA2USB LR s již nepodporovaným linuxovým ovladačem od výrobce.

Fluttershy, yay! | Komentářů: 0
Jaké hodinky nosíte (nejčastěji)?
 (24%)
 (6%)
 (15%)
 (55%)
Celkem 272 hlasů
 Komentářů: 28, poslední dnes 20:38
Rozcestník

Přechod na MSVC 2015

13.2.2016 23:47 | Přečteno: 1467× | flame

A komu tím prospějete, co? Druhé straně?! Aneb Zhruba tak nějak by se daly shrnout mé pocity z akce "přechod na MSVC 2015" u Windows buildů GPXSee.

Vše začalo tím, že už mě začal unavovat bug v MSVC 2010, které jsem do té doby používal. Při překladu s "-O2" vytváři MSVC 2010 grafické artefakty ve widgetu grafu a tak po každém běhu qmake musela následovat úprava vygenerovaného Makefile, nehledě na ne zcela optimální výsledek při kompilaci s "-O1" (což je v podání MSVC optimalizace nikoliv na rychlost běhu, ale na velikost binárky). A když už měnit překladač, tak za to nejnovější, co existuje, to dá přece rozum. Nebo ne?

Pro ty co nikdy neměli tu čest s vývojem pro Windows je to asi překvapení, ale v "holém" systému není (nebyl) žádný ekvivalent libc natož libstdc++, vše se musí dotáhnout s aplikací ať už ve formě jednotlivých knihoven přiložených k aplikaci ("hnusné" ale funkční a efektivní řešení), nebo jako tzv. "VS redistributables", které tyto knihovny, vždy pro jednotlivou verzi MSVC, nainstalují globálně do systému.

Důvod, proč preferovat nehezké řešení s "vykuchanejma" knihovnama a ne systémové "redistributables" je ten, že "redistributables" mají ~13 MB, zatímco potřebné C/C++ knihovny jen lehce přes 1 MB. Pokuď tedy chcete distribuovat jakoukoliv malou aplikaci, může to klidně znamenat zvětšit její instalátor o řád! A i v případě běžné Qt aplikace, kde Qt knihovny zaberou ~6 MB je to nárůst na víc jak dvojnásobek.

S příchodem MSVC 2015 se Microsoft pokusil stávající stav vylepšit a fakticky přejít na Linux-like systém, kde je libc vždy součástí systému. Bohužel to s čím přišel je typické Microsoft řešení, které funguje jenom napůl a jenom občas. Nové systémy totiž běhové prostředí (již neverzované podle MSVC) obsahují, ty starší ale obecně nikoliv. Například na Windows 7 záleží na tom, je-li nainstalován update KB2999226, který je označen ale pouze jako volitelný a tak ho půlka instalací Windows 7 nemá. Navíc jde pouze o ekvivalent libc, libstdc++ (msvcpXXX.dll) je stále v režii VS..

Snad proto, že Microsoft tušil, že s takovým polo-řešením spoustu lidí neodradí od toho, přibalovat lokální C/C++ runtime spolu s aplikací, tuto možnost raději zcela zatrhl. Po vlně kritiky (znemožňuje to totiž vyrobit aplikace, které nevyžadují pro instalaci elevaci) to snad zase s prvním service packem VS 2015 umožnil, mě se ale nicméně ty knihovny separovat nepodařilo. Nebo přesněji podařilo, ale (minimálně) na Windows XP z nějakého záhadného důvodu neprojde DllMain() u api-ms-win-core-* knihoven.

Nezbylo tedy než kapitulovat a přibalit "redistributables". Součásně pak přejít u GPXSee na "globální" instalaci do "Program files". Jak to vše v instalátoru (v mém případě NSIS) správně udělat by vydalo na samostatný článek, ale jak se říká: "zdrojový kód lepší než tisíc slov".

Pokud nejste Linus a nemůžete si tak dovolit psát programy podle hesla "Testing"? What's that? If it compiles, it is good; if it boots up, it is perfect.", budete se pravděpodobně snažit nový instalátor nějak otestovat. Vyzkoušet všechny systémy od Windows XP po Windows 10 už dneska v době virtuálů není nereálné, jenže kde je vzít a nekrást? A co takhle třeba přímo u Microsoftu? Jo, časy se mění...

       

Hodnocení: 82 %

        špatnédobré        

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

Komentáře

Vložit další komentář

Petr Tomášek avatar 14.2.2016 13:44 Petr Tomášek | skóre: 38 | blog: Vejšplechty
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Že ti ty widle za to stojí...
multicult.fm | monokultura je zlo | welcome refugees!
Martin Tůma avatar 14.2.2016 15:04 Martin Tůma | skóre: 38 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015

Je to suverénně nejpoužívanější desktop OS. Můžu s tím nesouhlasit, můžu proti tomu protestovat, ale to je asi tak všechno co s tím můžu dělat. ;-)

A mezi náma - ono vyrobit RPM/DEB balíčky je úplně stejná pakárna...

Každý má právo na můj názor!
randy avatar 14.2.2016 17:24 randy | skóre: 20 | Hviezdoslavov
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Mas tam chybu :) Vyrobit DEB baliky je pakaren, ale co je na RPM (hlavne ked sa pozriem na tvoj .spec) zloziteho?
romii
Martin Tůma avatar 14.2.2016 17:49 Martin Tůma | skóre: 38 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Třeba to, že spec pro SUSE nefunguje pro RHEL a vice versa. K tomu vyrábět oboje je potřeba nastudovat nějakou magii, k čemuž jsem se ještě ani nedostal...
Každý má právo na můj názor!
randy avatar 14.2.2016 18:21 randy | skóre: 20 | Hviezdoslavov
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
To je jasne, kedze nazvy balikov v distribuciach su trosku ine. Malo by stacit tam dat len podmineky pre BuildRequires a hotovo, no neskusal som.
romii
pavlix avatar 14.2.2016 19:04 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Tak ani RPM pro Fedoru automaticky nefunguje pro RHEL, ale dá se v případě potřeby napsat s podmínkami.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
14.2.2016 18:39 podlesh | skóre: 38 | Freiburg im Breisgau
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Zajímavé. Moje zkušenosti jsou přesně opačné. Zrovna v minulém roce jsem se zase trochu výrobě balíčků věnoval a nadával jsem jak špaček (u RPM samozřejmě ; výroba DEB byla vyloženě oddychovka).
pavlix avatar 14.2.2016 18:50 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Mně se na RPM spec líbí, že tam člověk píše víceméně jen to, co je potřeba, kdyžto Deb je snad potřeba nejdřív vygenerovat a pak do toho vepisovat.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
14.2.2016 18:58 podlesh | skóre: 38 | Freiburg im Breisgau
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Jako obsah toho balíčku? To je právě postavené na hlavu - pokud už obsah mám připravený, tak musím do spec psát script který to kopíruje z místa na místo. Dává to smysl pokud skutečně začínám od zdrojáků a do specfile dám celý postup buildu, ale přijde mi lepší debianí koncept kde toto je jen nadstavba nad jednoduchými nástroji pro výrobu balíčku (kterou tedy můžu nebo nemusím použít).
kdyžto Deb je snad potřeba nejdřív vygenerovat a pak do toho vepisovat.
... a nebo jsem možná vůbec nepochopil co je míněno. Možná se jedná o ten soubor s metadaty? To mi ale nedává smysl, protože je to přesně naopak - rpm specfile je obludný soubor do kterého se musí vyplnit spoustu různých věciček, zatímco pro deb balík mi stačí jediný soubor s dvojicemi klíč:hodnota
Package: blablaplus
Version: 9.0.2
Maintainer: Kamil Podlesak <bla@bla.bla>
Depends: java8-jdk | java8-sdk, python, debconf (>= 0.5) | debconf-2.0, adduser (>= 3.48), dpkg (>= 1.8.3)
Description: bla bla bla
14.2.2016 18:51 podlesh | skóre: 38 | Freiburg im Breisgau
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Jeden typický příklad, když už se to nakouslo:

Nevíte někdo jako se oficiálně mají dávat python scripty (.py) do rpm noarch balíčků? Míněno aby mi rpmbuild nevynadal, že tam jsou architekture-specific binárky (pyc). Binárky které tam samozřejmě původně nebyly! Vážně, já drogy nepašuju, to mi tm museli podstrčit!!!!

PS: ty fígle s __arch_install_post a __os_install_post, schované někde hluboko v útrobách mailing listů.... ale pořád nemůžu pochopit proč to není normálně zdokumentované.
15.2.2016 12:56 luv | skóre: 18 | blog: luv
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Podstrcili! A me taky, IIRC jsem to resil explicitnim smazanim tech .pyc souboru.
15.2.2016 17:50 podlesh | skóre: 38 | Freiburg im Breisgau
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Abych jenom nenadával, tak tady je řešení většiny redhat/centos výpečků:
%define __jar_repack %{nil}
%define __arch_install_post    %{nil}
%define __os_install_post      %{___build_post}
%define _binaries_in_noarch_packages_terminate_build 0
Třeba se to bude někomu hodit :-)
15.2.2016 15:47 marbu | skóre: 30 | blog: hromada | Brno
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Jo, mám dojem, že rpmbuild vytvoří pro všechny .py sourbory .pyc binárky a přidá je do balíčku. Pokud tohle selže (např. při chybě v syntaxi), tak selže celý build.
I think warning here is a bug. The biggest cloud service provider. There is no point in being so cool in a cold world.
skunkOS avatar 14.2.2016 20:19 skunkOS | skóre: 26 | blog: Tak nějak
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Maj rozdílný jména balíků. Očekuj si na OBS můj projekt, třeba rssguard-qt5.
http://martinrotter.github.io
15.2.2016 09:43 Honz
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Je to suverénně nejpoužívanější desktop OS.
Strašně zvláštní formulizace...
pavlix avatar 14.2.2016 15:23 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Legální vývojářská virtuálka Windows použitelná v qemu/kvm by mě docela zajímala. Budu rád, když se podělíš o zkušenosti. Co bych si měl vlastně stáhnout?
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
Martin Tůma avatar 14.2.2016 16:58 Martin Tůma | skóre: 38 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015

?! A ten link si zkoušel? Jsou to normální virtuály pro Virtualbox. Od Windows XP po Windows 10 volně k použití pro nekomerční účely. Jediný omezení je, že fungujou pouze 90 dní, ale sám Microsoft radí, že si máš udělat snapshoty.

Každý má právo na můj názor!
pavlix avatar 14.2.2016 18:51 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Tam to nabízí samé cílené na testování webů. Nemají někde něco ideálně na vývoj v céčku?
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
Martin Tůma avatar 15.2.2016 07:05 Martin Tůma | skóre: 38 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015

Doinstalovat tam Visual Studio jde jako do normální instalace Windows. Hlavní přínos těch virtuálů vidím ale právě v možnosti vyzkoušet výsledný produkt na celém spektru verzí Windows. Pro vývoj bych tak nějak očekával že člověk ty Windows stejně bude mít. Kor když koupit bez nich dneska počítač není zrovna běžný.

Jó kdyby takhle poskytl Apple OS X to by byla jiná, tam už si dovedu představit, že kupovat si kvůli kompilaci (Qt) programu nový počítač se asi moc lidem nechce... Jenomže takhle Apple money machine nefunguje ;-)

Každý má právo na můj názor!
pavlix avatar 15.2.2016 09:13 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Doinstalovat tam Visual Studio jde jako do normální instalace Windows.
Tak pokud je Visual Studio volně ke stažení a užívání, tak proč ne. I když pak úplně nechápu, proč ho rovnou nedají k dispozici ve formě virtuálky.
Kor když koupit bez nich dneska počítač není zrovna běžný.
Pro mě teda není spíše běžné kupovat počítač s Windows.
Jó kdyby takhle poskytl Apple OS X to by byla jiná, tam už si dovedu představit, že kupovat si kvůli kompilaci (Qt) programu nový počítač se asi moc lidem nechce...
Mně se nechce kupovat dedikovaný počítač ani kvůli pár nekomerčním experimentům na Windows.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
Martin Tůma avatar 15.2.2016 13:28 Martin Tůma | skóre: 38 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Tak pokud je Visual Studio volně ke stažení a užívání, tak proč ne.

Volně k dispozici (a to IMHO i pro komerční využití) je nejenom kompilátor, ale i velé Visual Studio v Express edici.

I když pak úplně nechápu, proč ho rovnou nedají k dispozici ve formě virtuálky.

Měl jsem dojem, že taky děláš v korporaci, takže víš, že pokládat si otázky proč korporace něco dělá/nedělá je zcela zbytečné... ;-)

Mně se nechce kupovat dedikovaný počítač ani kvůli pár nekomerčním experimentům na Windows.

Na Windows dedikovaný HW nepotřebuješ, na OS X ano - virtualizovat OS X na PC je dle Applu nelegální.

Každý má právo na můj názor!
pavlix avatar 15.2.2016 14:13 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Visual Studio v Express edici.
Tak to asi někdy zkusím. Ale kdyby tohle někdo dával za rozumnou cenu v cloudu, kdy bych platil jen za dobu, kdy to skutečně běží, asi bych neváhal a ušetřil bych si práci.
Měl jsem dojem, že taky děláš v korporaci, takže víš, že pokládat si otázky proč korporace něco dělá/nedělá je zcela zbytečné...
Nevím. Co dělá můj zaměstnavatel řeším jen to té míry, do které se to týká mojí práce.
Na Windows dedikovaný HW nepotřebuješ
Nepotřebuju, ale zdálo se mi, že říkáš, že bych ho mít měl.
na OS X ano - virtualizovat OS X na PC je dle Applu nelegální.
Jenom na osobním počítači? Jinak je to ok?
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
Pavel Stárek avatar 18.2.2016 14:20 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Asi je lepší Visual Studio Community Edition https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx. Umí jednak vývoj pro Windows a rovněž tak pro Android, iOS, Python atd.
Kdo chce, hledá způsob; kdo nechce, hledá důvod.
skunkOS avatar 14.2.2016 20:17 skunkOS | skóre: 26 | blog: Tak nějak
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Proč nepoužíváte vlastně CMake, kterej ty NSIS generuje nádherně?
http://martinrotter.github.io
Martin Tůma avatar 15.2.2016 10:37 Martin Tůma | skóre: 38 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015

Protože je to další (zbytečná) závislost. QMake je pro build zcela vyhovující a NSIS bych potřeboval tak jako tak, tak proč do toho tahat ještě další mezivrstvu?

Co se týče možnosti použít CMake/Cpack na všechny platformy, tak pro Linux se člověk stejně nevyhne nastudování různejch proměnnejch, který jsou v zásadě ekvivalentem DEB/RPM konfiguráků, takže nějaká úspora je zanedbatelná. Navíc si nejsem jistej, jestli třeba OBS, který používám CPack podporuje. No a na OS X je výroba DMG triviální a hlavní "blocker" je stejně nutnost mít k dispozici Maca...

Každý má právo na můj názor!
skunkOS avatar 15.2.2016 19:44 skunkOS | skóre: 26 | blog: Tak nějak
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Nerozumím té vazbě Cmake & OBS. Mě to normálně funguje. Cpack se vůbec nijak nepoužívá. Alespoň já ho v OBS nijak nevolám nebo tak.
http://martinrotter.github.io
Martin Tůma avatar 15.2.2016 19:52 Martin Tůma | skóre: 38 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
No právě, takže si stejně musíš napsat spec/debian soubory. Kde je potom ta výhoda?
Každý má právo na můj názor!
15.2.2016 12:19 tom
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Proc to nekompilujes pres mingw v linuxu jako statickou binarku?
Martin Tůma avatar 15.2.2016 19:51 Martin Tůma | skóre: 38 | blog: RTFM | Praha
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Obecně mi přijde hnusný mít binárky zbytečně veliký, když můžou používat sdílený knihovny. Mingw taky potřebuje svůj vlastní runtime, takže tady si člověk nevybere, ale obecně je mnohem víc věcí kompilovanejch pomocí VS, takže šance, že se ušetří na sdílenejch knihovnách je větší (i když nyní s asi už 6 runtime verzema, který se běžně používaj je to taky otázka...). Teoreticky se dá i to QT sdílet, ale to moc lidí nainstalovaný nemá. Což ale neznamená, že jim člověk nemůže dát tu šanci.
Každý má právo na můj názor!
15.2.2016 20:23 tom
Rozbalit Rozbalit vše Re: Přechod na MSVC 2015
Vzdycky mi prislo, ze u windows je zbytecny se o to snazit, protoze si skoro vsechny aplikace stejne tahaji svoje verze knihoven, takze pak to vlastne neni s kym sdilet. Navic se pri statickem linkovani muze usetrit misto tim, ze se odhodi nepotrebna cast QT.

Založit nové vláknoNahoru

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