Re: Problémy s DLL a LIB ve VS2017

Pavel Hudeček edizon na seznam.cz
Středa Únor 16 08:56:07 CET 2022


No on je to poměrně rozsáhlý, multiplatformní projekt. Jednou za čas se 
to celé buildí nějakou sadou skriptů a QT, pro win64, linux a mac. A 
jednou z mnoha částí je i SDK pro C a to obsahuje zmíněné H, DLL a LIB, 
potom ještě několik dalších podobných trojic. To si samozřejmě buildí 
zákazníci na svých softwarech a MSVS různých verzí mezi nimi tvoří 
významnou skupinu.

PH

Dne 16.02.2022 v 0:22 Miroslav Šinko napsal(a):
> Tak pardon, mal som mylnu predstavu, ze je to libka z internetov..
>
> Import lib nemusi byt kompatibilna medzi roznymi verziami MSVC. Ak 
> mate zdrojaky, tak si ju zbuildujte v Studiu, v ktorom buildujete aj 
> aplikaciu. Ak mate od nej projekt, tak si ho otvorte vo vasom studiu, 
> ponukne vam konverziu na vyssiu verziu.
>
> Podla mna bojujete s veternymi mlynmi. To co mate hotove, je 
> pouzitelne v MSVS pre 32bit. Ale 64bit bola vytvorena pre GNU a to do 
> MSVS "nenatiahnete".
>
> Ina moznost je kuknut dependency walkerom na hotovu DLL, ake funkcie 
> ma exportovane (a v akej konvencii) a v zdrojakoch vasej aplikacie 
> pouzit "sehr dynamisch" pristup. t.j. LoadLibrary a GetProcAddress. 
> Teda sa vykaslat na staticke linkovanie dynamickej kniznice do projektu.
>
> miro
>
>
> On 15.2.2022 23:39, Pavel Hudeček wrote:
>> Knihovna rozhodně není open source, ale zbuildovat si ji můžu:-)
>>
>> A kromě zdrojáků po jejím autorovi zbyl i projektový fajl od MSVC a s
>> ním se normálně dá používat. Ale přes veškerou snahu se nepodařilo
>> přijít na to, jak vytvořit nový projekt tak, aby fungoval stejně. Je
>> vytvořený v nějaké starší verzi, takže ani s porovnáním fajlů jsem
>> neuspěl. Liší se prostě moc.
>>
>> A mě by se docela líbilo, kdybych věděl v čem je problém a taky kdybych
>> mohl zákazníkům do manuálu napsat, jak nastavit projekt v nearchaickém
>> MSVS.
>>
>> PH
>>
>> Dne 15.02.2022 v 22:48 Miroslav Šinko napsal(a):
>>> Som dinosaurus, VS2017 nepoznam (zaspal som na 2013), ale nejak
>>> nepredpokladam, ze sa da "naucit" na rozponavanie _attribute_. Takze
>>> by som vychadzal z toho, co som videl. Teda mate dll prichystanu na
>>> Win32 cez MSVC(dllexport) a Win64 cez GNU(_attribute_). Podla mna je
>>> dost mozne, ze 64bit verziu, co mate, ani pod MSVC nepojde zlinkovat.
>>> Ak som spravne pochopil, kniznica je open source, tak si ju zbuildujte
>>> v MSVC s tym dllexport aj ako 64bit a potom ju pouzite s dllimport vo
>>> vasej aplikacii.
>>>
>>> miro
>>>
>>> On 15.2.2022 21:59, Pavel Hudeček wrote:
>>>> Ano, jako ve všech ostatních případech. Ale tady to nějak nestačí.
>>>>
>>>> PH
>>>>
>>>> Dne 15.02.2022 v 21:08 Miroslav Šinko napsal(a):
>>>>> V nastaveniach projektu ste pridali do linker settings pxcapi.lib?


Další informace o konferenci Hw-list