feature/gbuild_merge needs testing

David Ostrovsky david.ostrovsky at gmx.de
Sun May 27 15:56:48 PDT 2012


Hi Matúš, *,

I have successfully installed Windows CI server and was surprised how 
easy it is:
VS 2008 Express, SDK 7, cygwin (well, with a couple of setup.exe cycles) 
... that it.

The only not obvious steps were: make and ccache have to be installed 
from dev-tools-repository,
otherwise it wouldn't work. CCACHE_PATH has to be set windows friendly,
a lá D:\\lo/ccache.

So now I can see how and where we broke the LO-build on Windows ;-)

On 27.05.2012 14:10, Matúš Kukan wrote:
> On 27 May 2012 11:45, David Tardon<dtardon at redhat.com>  wrote:
>> On Sun, May 27, 2012 at 12:39:32AM +0200, Matúš Kukan wrote:
>>> Problems:
>>> shell - missing exported symbols in ooofilt library from
>>> shell/source/win32/shlxthandler/ooofilt/exports.dxp
>> Right. And the same for shlxthdl. I will fix that.
> Sorry, does not work:
> C:/cygwin/home/matus/git/libo/shell/source/win32/shlxthandler/ooofilt/ooofilt.cxx(910)
> : error C2375: 'DllGetClassObject' : redefinition; different linkage
>          C:/PROGRA~1/MICROS~2/Windows/v6.0A/include\objbase.h(852) :
> see declaration of 'DllGetClassObject'
> C:/cygwin/home/matus/git/libo/shell/source/win32/shlxthandler/ooofilt/ooofilt.cxx(946)
> : error C2375: 'DllCanUnloadNow' : redefinition; different linkage
>          C:/PROGRA~1/MICROS~2/Windows/v6.0A/include\objbase.h(854) :
> see declaration of 'DllCanUnloadNow'
>
> First this problem was with nsplugin.
> You can also have a look at
> http://lists.freedesktop.org/archives/libreoffice/2012-January/023657.html
> thread.
>
>>> Something like 156202b06270a90a4b73370d04401486145076d2 could help.
>> I do not understand what are you trying to achieve there.
> To export symbols and work around problems as above.
> Though I am not sure if that really works.
>
>> SAL_DLLPUBLIC_EXPORT expands into __declspec(dllexport) on Windows and,
>> according to http://msdn.microsoft.com/en-us/library/7k30y2k5(v=vs.80) ,
>> this is equivalent to using /EXPORT:symbol on linker's command line. So
>> the commit effectively changes nothing, except that it uses less
>> preferred way to specify the exports...
> Right, but you can't use DLLPUBLIC macro only in source file.
> Only for functions without declaration in included header as
> component_getFactory()
> ( But you can use it only in header file I think. )
>
> Another possibility is used in extensions/Library_so_activex.mk : 56
>
Still doesn't work here, exact the same output.

C:/workspace/LO-WinXP-Head/shell/source/win32/shlxthandler/ooofilt/ooofilt.cxx(910) : error C2375: 'DllGetClassObject' : redefinition; different linkage
         C:/PROGRA~1/MICROS~4/Windows/v7.0/include\objbase.h(857) : see declaration of 'DllGetClassObject'
[...]
make[2]: *** [C:/workspace/LO-WinXP-Head/workdir/wntmsci12.pro/CxxObject/shell/source/win32/shlxthandler/ooofilt/ooofilt.o] Error 2

Another problem with shell:

propertyhdl.dll can not be created:

shlxthandler_common.lib(basereader.o) : error LNK2019: unresolved external symbol
"public: __thiscall xml_parser::xml_parser(unsigned short const *)" (??0xml_parser@@QAE at PBG@Z)
referenced in function "protected: void __thiscall CBaseReader::Initialize(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char>  >  const&)"
(?Initialize at CBaseReader@@IAEXABV?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@@Z)
C:/workspace/LO-WinXP-Head/workdir/wntmsci12.pro/LinkTarget/Library/propertyhdl.dll : fatal error LNK1120: 4 unresolved externals


>>> testtools - CustomTarget_bridgetest_climaker.mk
>>> error: .NET exception occured: System.AccesViolationException:
>>> Attempted to read or write protected memory. This is often an
>>> indication that other memory is corrupt.
>>> at ?A0x393b8821.sal_main()
>> No idea.
> Well, after commenting out CustomTarget_bridgetest_climaker.mk it builds fine.
> Maybe it's not really needed or someone will fix it later.
> I've not cared enough about testtools so far, to know more.
>
Commented it out like you proposed and pushed.
>>> connectivity - unresolved symbol __imp__SHGetFolderPath in
>>> Library_postgresql-sdbc-impl.mk
>> I suppose it needs shell32.dll . Can you try that?
> Sure, it's better.
I was still getting this error on Windows. I added shell32.dll and 
pushed it.

On Ubuntu I'm getting two cppunit errors (ScFiltersTest::testPasswordOld 
and ScFiltersTest::testPasswordNew) :

subsequent_filters-test.cxx:734:Assertion
Test name: ScFiltersTest::testPasswordOld
assertion failed
- Expression: xDocSh.Is()
- Failed to load password.ods

If I uncomment this test:  subsequent_filters-test, everything is fine.

Regards
David


More information about the LibreOffice mailing list