LibreOffice-SDK for MinGW

2013-05-07 Thread Joachim Langenbach
Dear Helmar and Kendy,

I'm also trying to build the LibreOffice SDK with MinGW. Goal is to connect an 
application compiled with MinGW to LibreOffice on Windows, Linux and may be 
other platforms. Since my attampts to cross compile LibreOffice are not very 
successfully, I have two questions, before investing more time in that.

 So far the MinGW build is still a very experimental thing; I mostly use
 that when I develop something Windows-only because I can still keep my
 workflow, but as the binaries built with the MinGW SDK will be
 incompatible with the LibreOffice release builds, I am not sure it makes
 much sense to invest effort in that at this stage.

Does it mean, that an application linked against the MinGW SDK, could not 
connect to a MSVC standard libreoffice installation?

And second, what are the alternatives of using the SDK to connect to LibreOffce 
(if an compiler switch to MSVC is not wanted)? Ole connection may be used, but 
ole is not platform independent (or is it available under linux or MacOS?). 
Are there any other possiblities or have the SDK or OLE connection some other 
advantages and disadvantages?

Kind regards,

Joachim Langenbach
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: LibreOffice-SDK for MinGW

2013-05-07 Thread Joachim Langenbach
Dear Jan and Stephan,

 Joachim Langenbach píše v Po 06. 05. 2013 v 14:50 +0200:
  I'm also trying to build the LibreOffice SDK with MinGW. Goal is to
  connect an application compiled with MinGW to LibreOffice on Windows,
  Linux and may be other platforms. Since my attampts to cross compile
  LibreOffice are not very successfully, I have two questions, before
  investing more time in that.
 What exact failures did you have, please?

I've tried building 3.6.6.2 and 4.0.3.3. Both versions are configured with the 
attached autogen.lastrun on an OpenSUSE system with installed mingw32 packages 
from OpenSUSE build service. Within the 4.0.3.3 version I have fixed already 
some errors (e. g. lcms.h). The 3.6.6.2 are in original state. The errors I 
have currently are listed in the attached log files.

 
   So far the MinGW build is still a very experimental thing; I mostly use
   that when I develop something Windows-only because I can still keep my
   workflow, but as the binaries built with the MinGW SDK will be
   incompatible with the LibreOffice release builds, I am not sure it makes
   much sense to invest effort in that at this stage.
  
  Does it mean, that an application linked against the MinGW SDK, could not
  connect to a MSVC standard libreoffice installation?
 
 I am afraid this is the case so far :-(

Thanks for this clarification!

  And second, what are the alternatives of using the SDK to connect to
  LibreOffce (if an compiler switch to MSVC is not wanted)?
 
 Basically the advice would be to use Java or Python I'm afraid.  But I
 suppose you want to connect a C or C++ application to LibreOffice, is
 that correct?  In that case getting the MinGW SDK working would be best.
 
 But if your MinGW approach fails, you might experiment with actually
 using the Python bridge from your C++ code using Boost.Python - that
 will perform worse than direct C++, but will be able to connect even to
 the LibreOffice built using MSVC.
 
 Or (and that might be easier) create a small Python wrapper that calls
 the functions / services you need from SDK, and provides your
 application with a simple API, and you'd call functions of this wrapper
 from your C++ code using Boost.Python.

Ok, thanks for your hints. Since I'm developing with Qt, an python extension 
of the Qt-c++ application seems to be also a good option for me than. This 
should be platform independent also.

  Ole connection may be used, but
  ole is not platform independent (or is it available under linux or
  MacOS?).
  Are there any other possiblities or have the SDK or OLE connection some
  other advantages and disadvantages?
 
 I'd say here it depends on what exactly do you need to achieve...

From Stephan:

 Depends on what you mean with connect.  Two independent processes 
 communicating via the URP protocol should be fine.  Trying to load any 
 libraries from the MSVC-based LO installation into your MinGW-based 
 process would obviously fail.

You are right, the term connect is not really clear here. My goal is to read 
and write office files from my application. Therefore I designed an interface. 
Than I can implement the interface within plugins, which utilize different 
tools to read and write the files. For example one plugin handles CSV files, 
another uses MS Office per OLE and another should use LibreOffice. So connect 
is 
meant as any possible interaction between libreoffice and my plugin to read and 
write office files (precisly spreadsheets).


Kind regards,

Joachim Langenbach/usr/local/src/libreoffice/libreoffice-4.0.3.3/solenv/gbuild/Package.mk:44: *** gb_Deliver_deliver: file does not exist in solver, and cannot be delivered: 
/usr/local/src/libreoffice/libreoffice-4.0.3.3/solver/unxlngi6.pro/lib/libvcllo.so.  Schluss.

log for /usr/local/src/libreoffice/libreoffice-core-3.6.6.2/glib
patching file glib-2.28.1/build/win32/dirent/makefile.msc
Reversed (or previously applied) patch detected!  Assume -R? [n] 
Apply anyway? [n] 
Skipping patch.
2 out of 2 hunks ignored -- saving rejects to file glib-2.28.1/build/win32/dirent/makefile.msc.rej
patching file glib-2.28.1/build/win32/make.msc
Reversed (or previously applied) patch detected!  Assume -R? [n] 
Apply anyway? [n] 
Skipping patch.
5 out of 5 hunks ignored -- saving rejects to file glib-2.28.1/build/win32/make.msc.rej
patching file glib-2.28.1/gio/gzlibcompressor.c
Reversed (or previously applied) patch detected!  Assume -R? [n] 
Apply anyway? [n] 
Skipping patch.
3 out of 3 hunks ignored -- saving rejects to file glib-2.28.1/gio/gzlibcompressor.c.rej
patching file glib-2.28.1/gio/gzlibdecompressor.c
Reversed (or previously applied) patch detected!  Assume -R? [n] 
Apply anyway? [n] 
Skipping patch.
3 out of 3 hunks ignored -- saving rejects to file glib-2.28.1/gio/gzlibdecompressor.c.rej
patching file glib-2.28.1/gio/makefile.msc
Reversed (or previously applied) patch detected!  Assume -R? [n] 
Apply anyway? [n] 
Skipping patch.
9 out of 9 hunks ignored -- saving rejects

Re: LibreOffice-SDK for MinGW

2013-05-07 Thread Joachim Langenbach
Hi Helmar,

  I'm also trying to build the LibreOffice SDK with MinGW. Goal is to
  connect an application compiled with MinGW to LibreOffice on Windows,
  Linux and may be other platforms. Since my attampts to cross compile
  LibreOffice are not very successfully, I have two questions, before
  investing more time in that.
 In case youare interested I can submit my MinGW development environment for
 LO --- the office as stand-alone beast seems to work pretty well with
 some adjustments in the code (at least as far I was able to test it...).
 Please contact me directly on my e-mail account, I think there is too much
 code to be transferred via the list...

May be also others (including the libreoffice team, e. g. dtardon) are 
interested in those files. Is there another (public) way to share those files 
easily? (May be github or  something like that)

 Difficulties arise as soon as the UNO-environment contacts the office and
 tries to get information with regards to services and interfaces. To be
 very cautious: I have the feeling that the information submitted by the
 office is correct, but somehow allocated memory in the UNO bridge seems to
 get corrupted (under very special circumstances I was able to remote
 control the office to create a new document...). Since the UNO-bridge is
 based on several threads my guess is that there is a problem with
 thread-safe use of shared memory. Unfortunately, at the moment I am bound
 with a money earning project, so my time for this issue is rather limited.
 However, I definitely will help in any possible way to solve this problem.
 
   So far the MinGW build is still a very experimental thing; I mostly use
   that when I develop something Windows-only because I can still keep my
   workflow, but as the binaries built with the MinGW SDK will be
   incompatible with the LibreOffice release builds, I am not sure it makes
   much sense to invest effort in that at this stage.
  
  Does it mean, that an application linked against the MinGW SDK, could not
  connect to a MSVC standard libreoffice installation?
 
 Well, I use a 2 years old SDK (MinGW) which is able to connect to an
 off-the-shelf MS-LibreOffice. Sure, there are some shortcomings (not all
 event listeners work properly), but for my application it is sufficient.

Ok, so it seems to be at least an alternative.

  And second, what are the alternatives of using the SDK to connect to
  LibreOffce (if an compiler switch to MSVC is not wanted)? Ole connection
  may be used, but ole is not platform independent (or is it available
  under linux or MacOS?).
 SDK and Linux is a dream - it simply works.
 SDK and Windows is not so easy (I have problems to compile the SDK stuff
 under MSVC - however my MSVC knowledge is rather small; I definitely would
 prefer MinGW). A (Mac-addicted) colleague told me that the SDK for MacOS
 available half a year ago only contained code for 32-Bit Macs, which does
 not work with recent 64-Bit machines/os'es. I don't know the actual
 situation with regards to that issue, but I would expect that using the
 correct wordlength the MacOS-SDK should be comparable to the Linux version.


Over all, the SDK seems to be not as platfrom independent as the LibreOffice 
project itself.

Regards,

Joachim
___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice