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:00 | Nová verze

Byla vydána nová verze 19.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na HardenedBSD. Kódový název OPNsense 19.7 je Jazzy Jaguar. Přehled novinek v příspěvku na blogu.

Ladislav Hagara | Komentářů: 0
dnes 11:11 | Zajímavý článek

Společnost Latacora věnující se počítačové bezpečnosti publikovala na svém blogu článek The PGP Problem poukazující na nedostatky PGP, OpenPGP a GnuPG. Článek obsahuje jak odkazy na další zajímavé články, tak i odkazy na alternativní softwarové produkty: Magic Wormhole pro přenos souborů, Tarsnap pro zálohování, Signify nebo Minisign pro podepisování balíčků, kryptografickou knihovnu libsodium nebo nástroj age pro šifrování souborů [Hacker News].

Ladislav Hagara | Komentářů: 2
včera 20:44 | Komunita

KDE Plasma 5 slaví 5 let. Verze 5.0 byla vydána v červenci 2014. Aktuálně poslední je verze 5.16 z června letošního roku. Připomenutí jednotlivých verzi ve videu na YouTube nebo na PeerTube.

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

Byla vydána verze 6.0 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu.

Ladislav Hagara | Komentářů: 0
včera 11:33 | Zajímavý článek

Benson Leung řeší na people.kernel.org Kolik je druhů USB-C do USB-C kabelů? TL;DR: Je jich 6 a pro uživatele je to docela matoucí.

Ladislav Hagara | Komentářů: 8
15.7. 23:00 | Zajímavý článek

Richard M. Stallmanrozhovoru pro Opensource.com vysvětluje svou roli v návrhu standardu POSIX a vztah mezi projektem GNU a POSIX. V článku jsou pak vyjmenovány příklady funkcí nástrojů GNU, které byly do standardu přijaty.

Fluttershy, yay! | Komentářů: 0
15.7. 19:11 | Komunita

Nadace Blender Foundation oznámila, že společnost Epic Games vyvíjející počítačové hry věnuje v rámci svého programu Epic MegaGrants 1,2 milionu dolarů na vývoj svobodného 3D softwaru Blender.

Ladislav Hagara | Komentářů: 0
15.7. 11:44 | Zajímavý článek

Článek Co je Silverblue? na MojeFedora.cz odpovídá na otázky kolem tohoto projektu. Silverblue je oficiální název pro novou generaci desktopového operačního systému, dříve známého jako Atomic Workstation. Celý základní operační systém je v Silverblue dodáván ve formě obrazů, které jsou vytvářeny za použití projektu rpm-ostree. Hlavními přednostmi jsou jeho rychlost, bezpečnost, atomické aktualizace a neměnnost.

Ladislav Hagara | Komentářů: 12
15.7. 11:00 | Humor

Jak na uživatelsky přívětivý web? Projít si User Inyerface aneb UX peklo a nikdy nic z toho nepoužít.

Ladislav Hagara | Komentářů: 9
15.7. 10:22 | Zajímavý software

Byla vydána verze 0.6.0 textového editoru Amp inspirovaného editorem Vim a naprogramovaného v programovacím jazyce Rust. Přehled novinek na GitHubu.

Ladislav Hagara | Komentářů: 0
Používáte ještě 32bitový software na PC?
 (20%)
 (17%)
 (23%)
 (48%)
 (8%)
 (27%)
Celkem 88 hlasů
 Komentářů: 8, poslední dnes 02:18
Rozcestník

Přechod na MSVC 2015

13.2.2016 23:47 | Přečteno: 1456× | 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 | Banská Bystrica / Bratislava / 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 | Banská Bystrica / Bratislava / 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.