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

Vyšel toolkit Qt verze 5.14. Změny se týkají především Qt Quick, jeho odstínění od konkrétních nízkoúrovňových grafických API a zlepšení výkonu zvláště ve 3D. Začíná tím proces postupných příprav na Qt 6. Příští vydání (5.15) bude s dlouhodobou podporou. Aktuálně také vyšlo vývojové prostředí Qt Creator 4.11 – vedle oprav chyb a řady zjednodušení konfigurace přidává mj. experimentální podporu WebAssembly.

Fluttershy, yay! | Komentářů: 0
dnes 06:00 | Nová verze

Byla vydána nová verze 1.41 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.41 bylo vydáno také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

Ladislav Hagara | Komentářů: 0
včera 23:55 | IT novinky

J2EE, nověji Java EE a nejnověji Jakarta EE, tj. Java pro vývoj a provoz podnikových aplikací a informačních systémů (Java Platform, Enterprise Edition), slaví 20 let. První verze J2EE 1.2 byla vydána 12. prosince 1999.

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

V kancelářích společnosti NGINX, tj. společnosti stojící za stejnojmenným webovým serverem a reverzní proxy, v Moskvě proběhla policejní razie. Na NGINX si nárokuje práva společnost Rambler. Igor Sysoev, zakladatel společnosti NGINX, ve společnosti Rambler pracoval v letech 2000 až 2011. V březnu letošního roku byla společnost NGINX prodána společnosti F5 Networks za 670 milionů dolarů.

Ladislav Hagara | Komentářů: 2
včera 18:44 | Nová verze

Vyšel Vim 8.2. Jedná se převážně o opravnou verzi tohoto textového editoru, ale mezi několika novými funkcemi je také možnost používat vyskakovací okna v uživatelském rozhraní, což využijí zvláště vývojáři doplňků pro dialogová okna či okna s nápovědou, napovídáním atp. Ukázkou je hra killersheep.

Fluttershy, yay! | Komentářů: 1
včera 17:44 | Nová verze

Byla vydána nová verze 19.12.0 KDE Aplikací (KDE Applications). Přehled novinek i s náhledy v oficiálním oznámení, kompletním seznamu změn a na stránce s dalšími informacemi.

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

Nezisková organizace Electronic Frontier Foundation vydala obsáhlý článek vysvětlující plošné techniky online sledování používané k hromadění dat korporacemi, shrnuje další využití těchto dat a naznačuje, jak se tomu bránit: technicky a legislativně.

Fluttershy, yay! | Komentářů: 1
včera 14:32 | Pozvánky

Ve středu, 18. prosince od 17:00 do 20:00, se uskuteční šestý Avast C++ Meetup. Přednášet bude Timur Doumler (člen ISO C++ komise) na téma „Type punning in modern C++“ a Chandler Carruth (Google, LLVM, člen ISO C++ komise) na téma „Programming Language Design for Performance Critical Software“. Registrace zdarma na meetup.com. Video stream bude dostupný v YouTube playlistu meetupu.

David Watzke | Komentářů: 1
včera 00:11 | Zajímavý článek

Daniel Vetter se v příspěvku Upstream Graphics: Too Little, Too Late (Grafika v upstreamu: příliš málo, příliš pozdě) na svém blogu věnuje podpoře a problémům grafiky v upstream Linuxu. Jedná se o souhrn jeho stejnojmenné přednášky na Linux Plumbers Conference (videozáznam, pdf).

Ladislav Hagara | Komentářů: 0
11.12. 23:33 | Komunita

Na YouTube lze zhlédnout čtrnáctiminutový dokument televize CNBC s názvem The Rise Of Open-Source Software (Vzestup open source softwaru).

Ladislav Hagara | Komentářů: 0
Kolik jste vystřídali distribucí Linuxu? (uvažujte distribuce, které jste používali aspoň měsíc)
 (3%)
 (63%)
 (27%)
 (3%)
 (3%)
Celkem 30 hlasů
 Komentářů: 3, poslední dnes 09:23
Rozcestník

www.AutoDoc.Cz

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

26.3. 21:41 rastos | skóre: 61 | blog: rastos
dynamická knižnica s nedefinovaným symbolom
Přečteno: 300×

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. 21:48 rastos | skóre: 61 | 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. 19:53 Bherzet | skóre: 11 | 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. 21:00 debian+
Rozbalit Rozbalit vše Re: dynamická knižnica s nedefinovaným symbolom
29.3. 14:52 rastos | skóre: 61 | 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. 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.