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

    Knihovna FFmpeg byla vydána ve verzi 8.0 „Huffman“. Přibyla mj. podpora hardwarově akcelerovaného kódování s využitím API Vulcan, viz seznam změn.

    Fluttershy, yay! | Komentářů: 0
    včera 17:44 | IT novinky

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) vydal Zprávu o stavu kybernetické bezpečnosti ČR za rok 2024 (pdf). V loňském roce NÚKIB evidoval dosud nejvíce kybernetických bezpečnostních incidentů s celkovým počtem 268. Oproti roku 2023 se však jedná pouze o drobný nárůst a závažnost dopadů evidovaných incidentů klesá již třetím rokem v řadě. V minulém roce NÚKIB evidoval pouze jeden velmi významný incident a významných incidentů bylo zaznamenáno 18, což oproti roku 2023 představuje pokles o více než polovinu.

    Ladislav Hagara | Komentářů: 0
    včera 13:55 | Komunita

    Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie). Servo mimo jiné nově zvládne animované obrázky APNG a WebP.

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | IT novinky

    Na chytré telefony a počítačové tablety v Rusku bude od začátku příštího měsíce povinné předinstalovávat státem podporovanou komunikační aplikaci MAX, která konkuruje aplikaci WhatsApp americké společnosti Meta Platforms. Oznámila to dnes ruská vláda. Ta by podle kritiků mohla aplikaci MAX používat ke sledování uživatelů. Ruská státní média obvinění ze špehování pomocí aplikace MAX popírají. Tvrdí, že MAX má méně oprávnění k přístupu k údajům o uživatelích než konkurenční aplikace WhatsApp a Telegram.

    Ladislav Hagara | Komentářů: 21
    včera 04:22 | IT novinky

    Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu srpnový souhrn novinek. Kvůli nedostatečnému zájmu byla ukončena výroba telefonů PinePhone Pro.

    Ladislav Hagara | Komentářů: 1
    21.8. 22:22 | Nová verze

    Po pěti měsících vývoje byla vydána nová verze 0.15.1 programovacího jazyka Zig (GitHub, Wikipedie). Verze 0.15.0 byla přeskočena. Přispělo 162 vývojářů. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    21.8. 21:55 | Komunita

    Před sedmi lety společnost Valve představila fork projektu Wine s názvem Proton umožňující v Linuxu přímo ze Steamu hrát počítačové hry do té doby běžící pouze ve Windows. Aktuální přehled podporovaných her na stránkách ProtonDB

    Ladislav Hagara | Komentářů: 0
    21.8. 14:55 | IT novinky

    Společnost DuckDuckGo rozšířila svůj AI chat Duck.ai o GPT-5 mini (𝕏). Duck.ai umožňuje anonymní přístup bez vytváření účtů k několika modelům umělé inteligence. Aktuálně k GPT-4o mini, GPT-5 mini, Llama 4 Scout, Claude Haiku 3.5 a Mistral Small 3.

    Ladislav Hagara | Komentářů: 5
    21.8. 12:44 | Bezpečnostní upozornění

    Marek Tóth v příspěvku DOM-based Extension Clickjacking: Data ve správcích hesel v ohrožení na svém blogu popsal novou clickjacking techniku s několika variantami útoků a otestoval ji proti 11 správcům hesel. Výsledkem bylo nalezení několika 0-day zranitelností, které mohly ovlivnit uložená data desítek milionů uživatelů. Jedno kliknutí kdekoliv na webové stránce kontrolované útočníkem umožňovalo ukrást uživatelská data ze

    … více »
    Ladislav Hagara | Komentářů: 1
    20.8. 21:11 | IT novinky

    Na dnešní akci Made by Google 2025 (YouTube) byly představeny telefony Pixel 10 s novým čipem Google Tensor G5 a novými AI funkcemi, hodinky Pixel Watch 4 a sluchátka Pixel Buds 2a.

    Ladislav Hagara | Komentářů: 25
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (76%)
     (10%)
     (4%)
     (4%)
     (6%)
     (0%)
    Celkem 49 hlasů
     Komentářů: 6, poslední 21.8. 13:35
    Rozcestník

    Dotaz: CMake, pocet radku v souboru

    7.2.2017 23:05 Franta
    CMake, pocet radku v souboru
    Přečteno: 531×
    Existuje nejake lepsi reseni, jak v CMakeLists.txt spocitat pocet radku v souboru, nez toto? Nacteni souboru a pak ukladani matchu do pole jenom proto, abych mohl ziskat jejich pocet, mi neprijde nejlepsi. Bude se jednat o velky projekt s hodne soubory a nechci, aby beh cmake trval vecnost:
    file(READ ${source_file} source_file_contents)
    string(REGEX MATCHALL "\n" newline_matches "${source_file_contents}")
    list(LENGTH newline_matches newline_count)
    

    Řešení dotazu:


    Odpovědi

    8.2.2017 09:56 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    wc -l soubor

    8.2.2017 18:35 Franta
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Ja se omlouvam, ale myslici clovek snad pozna, ze tohle mi je k nicemu. Pisu v CMakeLists.txt, jako priklad uvadim nejake prikazy cmake a vy mi sem date konzolovy prikaz.
    8.2.2017 18:46 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    A je problém ho použít že?

    Když ho použít nechceš nemusíš o tom to je napiš si počítání konců řádků podle sebe.
    8.2.2017 20:51 Franta
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Ale vsak pisu, ze to potrebuju v cmake a ne ve shellu.
    8.2.2017 20:56 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Předpokládám, že cmake umí spouštět wc a shell k tomu není vůbec potřebný.

    BTW: K čemu je vlastně dobré znát počet řádek ve zdrojovém souboru?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.2.2017 21:06 kamen
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    vy jste uplne ale uplne zaujaty tim wc.

    dotaz byl jak to udelat v cmake.

    ne na wc, ne v shelu,omv,aralu..

    8.2.2017 21:51 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Nejsem tím zaujatý pokud jsi si nevšiml další příspěvky nebyly moje.

    Ale když už jsme u toho proč bych spouštěl nějaký shell????

    cmake neumí spustit externí program.

    A jinak taky by mě zajímalo proč v programu počítat kolik má řádků?
    9.2.2017 08:17 kamen
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    muj omyl: sory; a ne jako, ale fakt. muj nehezky komentar patril predchozimu diskuteru.

    cmake ext. program: pokud vim, tak cmake pri generovani build systemu umi spustit ext. program. je to ale ve vetsine nevhodne, protoze to vytvari potrebu platformne zavisleho ext. programu.

    8.2.2017 22:07 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    O shellu přece vůbec nebyla řeč...

    Používám make, ve kterém zcela běžně volám externí programy (bez shellu) a předpokládal jsem, že to v cmake bude skoro stejné.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.2.2017 21:47 Franta
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Unity build. Ale protoze se jedna o velky projekt, chci limitovat celkovy pocet radku (tj. vsech includovanych cpp souboru) pro takto vygenerovany soubor, jinak by to sezralo vsechnu pamet a kompilator by umrel.
    8.2.2017 21:54 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Co je zase toto za blbost?

    Velké projekty se skládají z menších prvků které se teprve potom slinkují a né že se udělá jeden cpp soubor v kterém bude:
    <include> 1.cpp
    <include> 2.cpp
    .......
    <include> 10000.cpp
    8.2.2017 22:11 Franta
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    To neni blbost. Prave, ze se sklada z mensich prvku, ty se skladaji z mraky cpp souboru a kdyz se kazdy kompiluje zvlast (i nekolik paralelne) tak to proste trva hodne dlouho. Unity build toto klidne dokaze zkratit na polovinu. Misto treba 200 cpp souboru kompilujete jen 20, ktere kazdy includuji 10 a samozrejme dale se to paralelizuje. Hlavni nevihodou je vetsi spotreba pameti pri kompilaci a proto se to snazim omezit celkovym poctem radku.
    10.2.2017 04:24 Sten
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    O ccache jste už slyšel? V porovnání s tím je Unity Build jen nepodařená hříčka.
    8.2.2017 22:11 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Includují se přece jen hlavičkové soubory, které bývají poměrně krátké. Nějaké překročení limitní délky vůbec nehrozí.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.2.2017 22:16 Franta
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    V tomto pripade includuji cpp soubory do jineho cpp souboru, ktery se kompiluje misto tech puvodnich. Jak pisu vyse, pokud bych do jednoho souboru naincludoval vsechny, nebude dostatek pameti pro kompilaci, je potreba to nejak rozdelit a omezit to poctem radku tech cpp souboru je +- autobus uzitecne reseni. Akorat se jeste snazim zkratit dobu behu cmake.
    8.2.2017 22:18 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Tohle řešení ve výsledku pouze prodlouží dobu kompilace, nehledě na hromadu dalších nevýhod.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.2.2017 22:20 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Přesně blbost.

    Na začátku možná ušetříš při kompilaci jednoho velkého souboru než 1000 menších, ale pak při opravě jednoho řádku zase musíš přeložit jeden velký soubor než 1 malý.

    Takže za mě je to fakt blbost o to co se snažíš.....
    8.2.2017 22:33 Franta
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    To je pro automatizovane buildy a ne pro vyvoj, kdy zmenim jednu radku a musim pak prekompilovat haldu souboru.
    8.2.2017 22:48 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Panebože takže vývoj máš dělaný jinak a finální překlady taky????

    Bral bych to kdyby se to pak překládalo pro 1000 různých platforem, ale pro těch pár co existují?

    Distribuji to pak jako binárku, a né že se to musí přeložit na každém stroji samostatně...

    By mě zajímalo pro jakou firmu pracuješ že máš tolik času se zabývat kravinama a podle mě to kravina je.
    9.2.2017 19:30 Franta
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    To jsou automatizovane buildy pro ruzne vetve pro ucely automatickych testu. Nejsou to buildy pro finalni produkt. Tech vetvi neni malo a cim drive se to prelozi, tim drive se to otestuje, zjisti se pripadne chyby a opravi.
    8.2.2017 22:15 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Ten článek je totální blud postavený na nesmyslech.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.2.2017 22:17 Franta
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Zkousel jste to? Tak, jak je v clanku kod, tak je to samozrejme nepouzitelne na velky projekt, ale pri trose prizpusobeni se build da o dost zrychlit.
    8.2.2017 22:22 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Nezrychlí, ale zpomalí. Když udělám změnu v jednom zdrojáku, zkompiluje se jen ten jeden zdroják a slinkuje s ostatními 199 již zkompilovanými soubory.

    Podle toho článku když udělám změnu v jednom souboru, musím kompilovat všech 200 cpp souborů, což bude trvat mnohem déle.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    8.2.2017 22:23 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Je to blbost.

    Protože při změně jednoho řádku musíš překompilovat jeden velký soubor než jeden malý a co bude rychlejší.......

    A při vývoji se pořád mění nějaké věci a proč překládat všechno v jednom velkém souboru?

    Možná při prvotním překladu ušetříš, ale při následných překladech budeš prodělávat....
    8.2.2017 22:37 Franta
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Viz vyse. Kazdopadne pojdme se vratit k puvodnimu dotazu. Jak to prostredky cmake udelat lepe, bez spousteni externich nastroju.
    8.2.2017 22:56 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Prostě musíš ty řádky spočítat.....

    Nevím co cmake umí a zjišťovat to nebudu, a nevím proč se bráníš používat externí programy.

    Koukni do wc jak to počítá a implementuj postup na to co umí cmake.
    8.2.2017 23:04 ssss
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Rekl bych, ze cmake nema zadny konkretni nastroj na pocitani radku...CMake/Language_Syntax tohle to celkem jasne objasnuje, ze i reseni, ktere jsi uvedl je v napsano jako script a nikoli funkce. cmake je nastroj na generovani souboru z jinych souboru, kontrolu zavislosti, substituce...

    Mas tak asi moznost bud pouzit tu uvedenou funkci nebo zavolat externi nastroj. Ani jedna moznost me neprijde spatna. Pouziti funkce je vic multiplatformni, naopak externi utilita bude vic flexibilni.

    Je treba si uvedomit, ze samotne cmake externi utility vola mnohokrat.. pri osahavani systemu na kterem bezi, u ruznych kompileru... testovani vlastnosti knihoven, prikazu...

    Dal bych mel upozornit, ze dokud si clovek skutecne neosaha konkretni reseni ohledne vykonu, tezko muze delat obecne zavery. Systemy typu make, cmake jsou vesmes interprety, tedy bezi vyraznejsi pomaleji nez kompilovane veci. Pokud skutecne narazis na problem s vykonem, zjevne bude potreba sahnout k C/C++, Fortranu, Ada, a apod.
    stativ avatar 9.2.2017 19:38 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Přidám se k názoru, že je to blbost. Pokud chcete zrychlit build, tak se doporučuji spíš podívat po ccache a pokud ještě nepoužíváte, tak zkusit precompiled headers.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    9.2.2017 20:08 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Myslím si, že další cache jsou již zbytečné a ke zrychlení buildu již nijak nepomohou.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    13.2.2017 23:45 Ondra
    Rozbalit Rozbalit vše Re: CMake, pocet radku v souboru
    Článek je z roku 2009, kdy SSD byl přepychem horních deseti tisíc, případně předmětem vášnivých diskusí v anarchistických kroužcích. Místo podobných rovnáků na ohejbáky bych se raději soustředil na investici do rozumného disku (SSD), a do lepšího strukturování kódu, aby se při změně jednoho řádku nemuselo kompilovat tisíc souborů. Pak samozřejmě do paralelizace buildu; pokud byste chtěl hodně popustit uzdu fantazie, tak je možné rozdělit projekt do několika knihoven, které se budou buildit samostatně a na různých nodech, a finální produkt se jen poskládá z nich.

    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.