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 05:33 | Bezpečnostní upozornění

    Byly publikovány informace o další zranitelnosti v procesorech. Nejnovější zranitelnost byla pojmenována VMScape (CVE-2025-40300, GitHub) a v upstream Linuxech je již opravena. Jedná se o variantu Spectre. KVM host může číst data z uživatelského prostoru hypervizoru, např. QEMU.

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

    V červenci loňského roku organizace Apache Software Foundation (ASF) oznámila, že se částečně přestane dopouštět kulturní apropriace a změní své logo. Dnes bylo nové logo představeno. "Indiánské pírko" bylo nahrazeno dubovým listem a text Apache Software Foundation zkratkou ASF. Slovo Apache se bude "zatím" dál používat. Oficiální název organizace zůstává Apache Software Foundation, stejně jako názvy projektů, například Apache HTTP Server.

    Ladislav Hagara | Komentářů: 3
    včera 17:33 | Nová verze

    Byla vydána (𝕏) srpnová aktualizace aneb nová verze 1.104 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.104 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    včera 15:33 | IT novinky

    Spotify spustilo přehrávání v bezztrátové kvalitě. V předplatném Spotify Premium.

    Ladislav Hagara | Komentářů: 0
    včera 15:00 | IT novinky

    Spoluzakladatel a předseda správní rady americké softwarové společnosti Oracle Larry Ellison vystřídal spoluzakladatele automobilky Tesla a dalších firem Elona Muska na postu nejbohatšího člověka světa. Hodnota Ellisonova majetku díky dnešnímu prudkému posílení ceny akcií Oraclu odpoledne vykazovala nárůst o více než 100 miliard dolarů a dosáhla 393 miliard USD (zhruba 8,2 bilionu Kč). Hodnota Muskova majetku činila zhruba 385 miliard dolarů.

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

    Bylo vydáno Eclipse IDE 2025-09 aneb Eclipse 4.37. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    10.9. 18:22 | IT novinky

    T-Mobile od 15. září zpřístupňuje RCS (Rich Communication Services) zprávy i pro iPhone.

    Ladislav Hagara | Komentářů: 3
    10.9. 13:22 | IT novinky

    Společnost ARM představila platformu Arm Lumex s Arm C1 CPU Cluster a Arm Mali G1-Ultra GPU pro vlajkové chytré telefony a počítače nové generace.

    Ladislav Hagara | Komentářů: 0
    10.9. 05:44 | Nová verze

    Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 17.0. Přidáno bylo 4 803 nových znaků. Celkově jich je 159 801. Přibylo 7 nových Emoji.

    Ladislav Hagara | Komentářů: 0
    9.9. 21:00 | IT novinky Ladislav Hagara | Komentářů: 17
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (2%)
     (4%)
     (2%)
    Celkem 164 hlasů
     Komentářů: 12, poslední 10.9. 13:00
    Rozcestník

    Dotaz: dynamická knižnica s nedefinovaným symbolom

    26.3.2019 21:41 rastos | skóre: 63 | blog: rastos
    dynamická knižnica s nedefinovaným symbolom
    Přečteno: 377×

    Narazil som na problém, ktorý sa dá zredukovať na nasledovné:

    Súbor test.c vyzerá takto:
    __declspec( dllimport ) void foo(void);
    
    __declspec( dllexport ) void bar(void)
    {
            foo();
    }
    
    C:\w\test>gcc -m64 -c test.c -o test.o
    
    C:\w\test>gcc -shared -o Test.dll test.o
    test.o:test.c:(.text+0xb): undefined reference to `__imp_foo'
    collect2.exe: error: ld returned 1 exit status
    
    Cieľom je vyrobiť dynamickú knižnicu, ktorá bude použitá v nejakej aplikácii pričom tá aplikácia použije ešte ďalšiu knižnicu implementujúcu funkciu foo(). Na Linuxe s tým nie je problém. Na windowsoch s MinGW a gcc kompilátorom dostanem chybovú hlášku. Dá sa s tým niečo spraviť?

    Odpovědi

    26.3.2019 21:48 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: dynamická knižnica s nedefinovaným symbolom
    Zabudol som povedať: chcel by som sa vyhnúť tomu, aby som pri linkovaní Test.dll dával linkeru ako parameter tú druhú knižnicu implementujúciu funkciu foo().
    27.3.2019 19:53 Bherzet | skóre: 19 | blog: Bherzetův blog
    Rozbalit Rozbalit vše Re: dynamická knižnica s nedefinovaným symbolom
    Tohle asi nevyhovuje té podmínce upřesněné v komentáři, viď?
    28.3.2019 21:00 debian+
    Rozbalit Rozbalit vše Re: dynamická knižnica s nedefinovaným symbolom
    29.3.2019 14:52 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: dynamická knižnica s nedefinovaným symbolom
    Tak som dospel k názoru, že to, čo chcem, nie je na windowsoch možné. Skrátka na windowsoch pri linkovaní tej knižnice linker musí mať informáciu, kde sa ten symbol má hladat pri runtime. To sa zariadi tým, že linkeru dáme "import library" (z tej druhej knižnice), takže telo funkcie foo() bude existovať len raz (v tej druhej knižnici).

    Ale tiež som dospel poznaniu, že to pre moju konkrétnu situáciu nepredstavuje až taký problém, ako som si myslel.

    A tá tvoja linka je celkom zaujímavá, takže dík.
    29.3.2019 16:28 debian+
    Rozbalit Rozbalit vše Re: dynamická knižnica s nedefinovaným symbolom
    Vsade, kde je definovany prototyp funkcie, ktora je externe implentovana (nie je prave v tom suboru ani v nom inak includovana), tak pouzivaj klucove slovo extern.

    Ja osobne nepoznam dllimport/dllexport, ake prislo mi, z precitaneho, ze je to iba na MS Windows (cital som MS stranky).
    Skrátka na windowsoch pri linkovaní tej knižnice linker musí mať informáciu, kde sa ten symbol má hladat pri runtime.
    Neviem ako to je presne na win, ale v Linuxe to neplati. Nemusis vediet. Kukni sekciu EXAMPLE v manualovej stranke dlopen.

    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.