[Kde-windows] Loading a part on win32/mingw

Jarosław Staniek js at iidea.pl
Mon May 29 17:36:59 BST 2006


Paulo Jorge Guedes said the following, On 2006-05-29 18:16:
>>-----Original Message-----
>>From: Ralf Habacker [mailto:ralf.habacker at freenet.de]
>>Sent: sexta-feira, 5 de Maio de 2006 19:26
>>To: Paulo Jorge Guedes; KDE on Windows
>>Cc: kde-devel at kde.org
>>Subject: Re: [Kde-windows] Loading a part on win32/mingw
>>
>>Paulo Jorge Guedes schrieb:
>>
>>>Hi,
>>>
>>>I just can't load the part. Under the debugger, the console output
> 
> is
> 
>>>this:
>>>
>>>win32_mapSo2Dll: 'd:\kde4\\lib\kde4\klinkstatuspart.dll' )
>>>win32_mapSo2Dll: 'd:\kde4\lib\kde4\klinkstatuspart.dll' )
>>>
>>
>> here the filename is    klinkstatuspart.dll
>>
>>>lt_dlopen d:/kde4/lib/kde4/libklinkstatuspart.la failed: can't open
> 
> the
> 
>>>module
>>>
>>>On that directory I have "libklinkstatuspart.dll" and
>>>"libklinkstatuspart.la".
>>>
>>>
>>
>>here the filename is libklinkstatuspart.dll.
>>
>>Seems that cmake does not create the wrong filename for
> 
> klinkstatuspart
> 
>>In general you can install filemon from www.sysinternals.com to see
>>which files are opened by  which applications. This helps a lot for
> 
> such
> 
>>problems
> 
> 
> I don't have admin permissions :(
> 
> Anyway, I tried with msvc and noticed the installed part files are named
> "foobarpart".[dll|la] instead of "libfoobarpart".[dll|la]. 
> CMake gurus, is this really intended (specially the ".la" file)?
> 
> If I add the prefix lib to the la file "foobarpart.la", that plugin is
> found, although I get this error:
> 
> win32_mapSo2Dll: 'd:\kde4-msvc\\lib\kde4\klinkstatuspart.dll' )
> klinkstatus:
> className=KParts::ReadOnlyPartmetaObject->className()=KLinkStatusPa
> rt
> klinkstatus:
> className=KParts::ReadOnlyPartmetaObject->className()=KParts::ReadO
> nlyPart
> klinkstatus: create - 1
> 
> With mingw the part can't be found and I think the problem lies in the
> ltdl_win.c code.

This can be fixed with #ifdef for mingw. MSVC has a _tradition_ of using lib 
names without "lib" prefix, and I guess with is not bad. I used this on KDE3 
with no problem and the code (that I ported) reflects this idea.

I'd be about to drop .la files usage compeltely in KDE4, on win32, then on 
UNIX. Installing wil be easier, and faster.

Developers: Please tell me how do you like this? I can most likely provide a 
patch.

-- 
regards / pozdrawiam,
  Jaroslaw Staniek / OpenOffice Polska

Sponsored by OpenOffice Polska to work on
* Kexi & KOffice: http://www.kexi-project.org | http://koffice.org/kexi
* KDE3 & KDE4 Libraries For Developing MS Windows Applications:
                   http://www.kdelibs.com/wiki
See also:
* Kexi For MS Windows: http://kexi.pl/wiki/index.php/Kexi_for_MS_Windows
* Kexi Support:        http://www.kexi-project.org/support.html




More information about the kde-core-devel mailing list