Re: Regarding MSVCR80.dll

2013-01-31 Thread Ariel Constenla-Haile
On Fri, Jan 25, 2013 at 01:14:45PM +, Shukla, Mangesh wrote:
Hi,
I am using OpenOffice3.4.1 sdk to build an external dll (it does not add
any new types, and is based on the documentLoader example) , which
interacts with OpenOffice. I could build the dll using Visual studio 2012
and use it as well. However since the dll is supposed to be cross
platform, I moved the project to a Makefile. I have written a Makefile,
which creates the .dll, and .lib. However when I use it in a test
application, the application complains that the MSVCR80.dll is missing
from the computer. I have the following set for the CPP compiler
 
OO_SDK_CPP_HOME=C:\apps\MVS8\VC\bin
 
 
 
Changing the CPP home to use the Visual studio 2012 compiler, causes
compilation error.
 
I have all the versions from VS2005 to VS2012 installed on my PC.
 
I implemented a test application using VS2012 as well as VS2008, but both
applications complain about the MSVCR80.dll
 
At the same time I am able to use the DLL built using the VS2012 project,
and everything works fine
 
Please advise on what is the best way of compiling using the Makefile and
using the dll. Let me know if you need anymore clarification.

I only build with the VS2008 and it works fine. If you are distributing
your binaries, you'll have to include the redistributable. And if you
are planning to build your application for all supported platforms, I'd
suggest you use the SDK build environment (it will save you a lot of
time, the Cmake approach suggested on other mail will require that you
create a Cmake module to find the OpenOffice/SDK installation).

As a general suggestion, don't start with an IDE project, simply try to
get a working Makefile with the SDK environment and make sure it builds
fine in all supported platforms. It would also be easier to provide
advice if you can upload the source code somewhere (IIUC you are simply
playing with an SDK example, so there would no problem in showing the
code).


Regards
-- 
Ariel Constenla-Haile
La Plata, Argentina


pgpVQFfPH4Dy0.pgp
Description: PGP signature


Re: Regarding MSVCR80.dll

2013-01-25 Thread jg
Forget about Mac and Linux for a moment, since you already  seem to have 
problems on Windows.


It looks as if your makefile is incorrect about some dependencies. You 
might also check that the manifest of the project has been set up 
properly 
(http://msdn.microsoft.com/en-us/library/ms235542%28v=vs.110%29.aspx), 
although a manifest is not strictly required in your case. When you 
build your project from within VS you don't have to worry about this.


It is probably not a good idea to simply compile and link your project 
using a hand written makefile, because different platforms might need 
other tools as well (like the manifest tool to bind the executable code 
to the proper runtime libs) and you probably end up doing a lot of OS 
dependent dispatching inside the makefile. Consider generating your 
build environment with cmake (www.cmake.org).


jg