abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:44 | IT novinky

    Apple představil nový MacBook Pro s čipy M4, M4 Pro a M4 Max.

    Ladislav Hagara | Komentářů: 1
    včera 22:00 | Zajímavý software

    Na GOG.com běží Halloween Sale 2024. Při té příležitosti lze získat zdarma počítačovou hru Return of the Phantom.

    Ladislav Hagara | Komentářů: 0
    včera 20:22 | IT novinky

    Společnost OpenAI spustila internetový vyhledávač ChatGPT search.

    Ladislav Hagara | Komentářů: 0
    včera 14:33 | Pozvánky

    Konference OpenAlt 2024 proběhne již tento víkend 2. a 3. listopadu v prostorách FIT VUT v Brně. Začíná ale už v pátek na warm-up party ve Studentském klubu u Kachničky v 17:00. Pokud jste ještě areál FITu nenavštívili, k dispozici jsou pokyny k orientaci. Na programu je 54 přednášek a workshopů. Témata jsou od silně technických témat jako je třeba GCC nebo PostgreSQL po méně technické témata jako eGovernment, nebo třeba detailní analýzu … více »

    Ladislav Hagara | Komentářů: 2
    včera 13:23 | Nová verze

    Byla vydána nová verze 6.9 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 14.0.1. Tor client na verzi 0.4.8.13. Thunderbird na verzi 115.16.0.

    Ladislav Hagara | Komentářů: 1
    včera 12:33 | Komunita

    Vývojáři free a open source synchronizačního nástroje (a p2p náhrady Dropboxu) Syncthing oznámili, že z důvodu odporu ze strany Google Play ukončují podporu OS Android. Bohužel v rámci toho zmizí i vydání Syncthing na F-Droid, který má slabší uživatelskou základnu. Syncthing je na Androidu implementován formou wrapper aplikace, která spustí Syncthing démon, vyžádá potřebná oprávnění a zpřístupní webové rozhraní démona. Ve srovnání se

    … více »
    Harvie.CZ | Komentářů: 4
    včera 01:11 | Nová verze

    V červnu 2022 bylo oznámeno, že z K-9 Mailu se stane Thunderbird pro Android. Trvalo to poněkud déle, než vývojáři předpokládali, ale včera byl první stabilní Thunderbird pro Android 8.0 vydán.

    Ladislav Hagara | Komentářů: 0
    30.10. 21:33 | Komunita

    Projekt microDMG Racer na Kickstarteru nevyšel, tak se autor rozhodl uvolnit na ESP32 postavené autíčko i ovladač jako open source.

    Ladislav Hagara | Komentářů: 6
    30.10. 13:22 | Nová verze

    Byl vydán TrueNAS SCALE 24.10 „Electric Eel“. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    30.10. 13:11 | Nová verze

    Byla vydána nová verze 24.10.29 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Nově s podporou AI (whisper.cpp) pro generování titulků. Nejnovější Shotcut je již vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 1
    Rozcestník

    Dotaz: rozdilne prelozene programy na jinak shodnych systemech

    15.12.2015 18:52 Pavel Kozisek
    rozdilne prelozene programy na jinak shodnych systemech
    Přečteno: 505×
    provadim backup mezi servry a soucasti zalohy jsou i adresare, ve kterych se nachazeji aplikace na servru provozovana vcetne vsech zdrojaku , make apod. Oba systemy jsou Centos 5.11 nainstalovane standardne pres repositare. YUM vypise na obou systemech stejny stav. Servry pouzivaji jine hardware (maly server - celeron, velky server - i5).

    Kdyz prelozim make-em nejakou soucast aplikace (v nejakem adresari) , tak vzniknou desitky souboru '.o' a i nekolik executable a knihoven ('.a'). Na druhem servru udelam to same. Kdyz nyni porovnan vznikle kompilaty, tak je 99% identickych , ale vzdy se nekolik prelozenych souboru lisi. To mne trochu znervoznuje. Rsyncem totiz pretahuji soubory vznikle na i5 na ten celeron a ten maly server by v pripade havarie velkeho servru mel fungovat jako nahrada - a mne by se lepe spalo, kdyby ty soubory byly nachlup stejne :-)

    Nevi nekdo, zda je to normalni? Co je pricinou, ze se tech nekolik souboru lisi. (velikost je ale kupodivu stejna - jen obsah je jiny)?

    Odpovědi

    15.12.2015 19:40 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    Normální věc.

    Optimalizace - jiný HW tak přeložené programy budou jiné.

    Musel by jsi to překládat s uplně stejnými volbami bez optimalizací pro CPU atd.....
    xxxs avatar 15.12.2015 20:26 xxxs | skóre: 25 | blog: vetvicky
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    ja neporadim, ale asi by si sem mal hodit s akymi modifikatormi kompilujes. a asi aj verziu make.
    15.12.2015 22:30 Pavel Kozisek
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    diky za nazory, taky jsem si nejdrive myslel, ze to bude mit neco spolecneho s hardware, ale pak jsem to zavrhl, protoze by jinak binarni soubory nebyly vpodstate prenositelne - tedy si myslim.

    Srovnaval jsem pomoci cmp -b ty binarni soubory a narazil jsem na jednu vec u statickych knihoven:

    tam je v hlavicce unix timestamp a to je samozrejme ruzne podle okamziku kompilace. Pomoci ar -D se tomu da zabranit, coz jsem dodneska nevedel - clovek se uci porad.

    U dvou objektovych souuboru jsme take nasel proc to je - je tam radka :

    fprintf(stdout, "This is program version %s.\n", __DATE__);

    ten program je stary 20 let - uprimne receno bych rekl, ze to neni dobra myslenka?

    jinak se to preklada nasledovne:

    gcc -Wall -Wno-pointer-sign -g -c -o parse_language_file.o parse_language_file.c

    to jsem myslel ze je bez optimalizace - kvuli debuggu ??
    16.12.2015 07:40 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    diky za nazory, taky jsem si nejdrive myslel, ze to bude mit neco spolecneho s hardware, ale pak jsem to zavrhl, protoze by jinak binarni soubory nebyly vpodstate prenositelne - tedy si myslim.

    U gcc je potřeba rozlišit dva parametry ovlivňující výsledný kód ve smyslu optimalizace pro konkrétní třídu procesorů. První je "-march", který definuje, jaká instrukční sada se použije; tam skutečně může dojít k tomu, že zvolím-li modernější model, využijí se instrukce, které na starších procesorech mohou chybět a kód tam nepoběží. Druhou je "-mtune", která pouze ovlivní to, jak překladač bude optimalizovat využití registrů a řazení instrukcí podle zvoleného modelu procesoru; na jiném může být výsledný kód o něco méně efektivní než kód optimalizovaný přímo pro něj, ale poběží.

    U obou jde použít hodnotu "native" a pak se použije instrukční sada resp. optimalizace podle procesoru, na kterém je spuštěn překladač. To je ale také jediný případ, kdy výsledný kód závisí na tom, kde se překládalo. Může to být výhodné, když počítáte s tím, že se program bude spoouštět právě jen na tomto počítači (nebo na jiných se stejným modelem procesoru); v jakémkoli jiném je lepší použít nějaké konkrétní hodnoty.

    fprintf(stdout, "This is program version %s.\n", __DATE__);

    ten program je stary 20 let - uprimne receno bych rekl, ze to neni dobra myslenka?

    Není to dobrá myšlenka, ale bohužel se s tím člověk pořád občas potká.

    to jsem myslel ze je bez optimalizace - kvuli debuggu ??

    Těžko říct. Absence optimalizace sice tu a tam může při debugování trochu pomoci, ale rozhodně to není důvod ji vypínat předem.

    16.12.2015 14:25 Zdenda_S
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    fprintf(stdout, "This is program version %s.\n", __DATE__)

    Co je na tom obecne spatne ? pouzivam neco velice podobneho pri vypsani helpu ci verze jen tam pouzivam misto data odkaz na gitovy commit a datum kompilace jen jako version of GCC VERSION at _DATE a popripade i hostname stroje na kterem to bylo prelozeno ...
    16.12.2015 14:42 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech

    Kdyby tam bylo datum toho příslušného commitu (a build byl vždy ze stejné větve), tak by to za určitých okolností smysl mít mohlo. Ale označovat datum buildu za verzi, je naprostý nesmysl, protože když si udělám checkout tři roky staré verze a přeložím ji, bude se vydávat za novější než ta, kterou jsem přeložil včera z aktuálních zdrojáků.

    Dávat do binárky datum buildu, build host, verzi překladače a kdoví co všechno sice na první pohled vypadá strašně cool, ale za dvacet let, co se s Linuxem potýkám, si nevzpomínám, že by mi tento typ informací byl (v binárce samotné) k něčemu užitečný. V prostředí jako OBS už je to pak vysloveně škodlivý zlozvyk, protože to zbytečně vynucuje nové a nové rebuildy, ke kterým by jinak nebyl žádný důvod. Proto třeba OBS při zjištění, že se něco takového děje, hlásí warning.

    17.12.2015 12:23 Zdenda_S
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    No vetsinou pouzivam ten commit stroj a verzi gcc jsem pridaval jen obcas kdyz sem ladil nejaký experiment který chodil na lunuxu a osx pod stejnou archtekturou a tisknul jsem to v protokolu kterej byl timto programem generován.
    16.12.2015 16:20 Xerces
    Rozbalit Rozbalit vše Re: rozdilne prelozene programy na jinak shodnych systemech
    Tohle (časový razítka v binárce) je myslím jeden z problémů, který se řeší v Debianu v rámci reprodukovatelných buildů. https://wiki.debian.org/ReproducibleBuilds Já to sice nesleduju jak to chlapci řeší ale tuším, že se to snaží ze zdrojáků vykosit.

    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.