You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-users@xerces.apache.org by Dirk Walter <Di...@nih.gov> on 2009/09/22 21:27:27 UTC

Build Issues under MinGW

Hello I have been trying to build xerces 2.8 under either
i586-mingw32msvc-* (the cross compilation package provided by Ubuntu) or
for a windows machine using mingw and msys. In neither case have I been
having much success.

I followed the instructions at
http://xerces.apache.org/xerces-c/build-winunix-2.html#MinGW and tried
to build using MinGW but it just won't build. I have attached the log
from the make, what am I doing wrong?

I have fixed the makefile according to the build instructions and have
XERCESCROOT set.

Re: Build Issues under MinGW

Posted by Boris Kolpackov <bo...@codesynthesis.com>.
Hi Dirk,

Dirk Walter <Di...@nih.gov> writes:

> if I just follow the instructions at
> http://xerces.apache.org/xerces-c/build-winunix-2.html#MinGW
> I get the following error:
> 
> "Makefile.incl:1168: warning: overriding commands for target `.c.o'
> Makefile.incl:1165: warning: ignoring old commands for target `.c.o'
> makefile:71: *** target file `ALL' has both : and :: entries.  Stop."

I think your make utility is broken. I vaguely remember reading about
many versions of GNU make for MinGW, some of which being unusable. The
way I build Xerces-C++ for MinGW is to install Cygwin and pass
-mno-cygwin to the compiler/linker. See the Cygwin instructions at
the above URL for details.


> Also the makefiles seem to think that MinGW needs the
> Win32PlatformUtils.cpp, is this correct?

Yes.

Boris

-- 
Boris Kolpackov, Code Synthesis Tools  http://codesynthesis.com/~boris/blog
Open-source XML data binding for C++:  http://codesynthesis.com/products/xsd
XML data binding for embedded systems: http://codesynthesis.com/products/xsde

Re: Build Issues under MinGW

Posted by Dirk Walter <Di...@nih.gov>.
I have been trying to get the build to work but so far I have no luck.

if I just follow the instructions at
http://xerces.apache.org/xerces-c/build-winunix-2.html#MinGW
I get the following error:

"Makefile.incl:1168: warning: overriding commands for target `.c.o'
Makefile.incl:1165: warning: ignoring old commands for target `.c.o'
makefile:71: *** target file `ALL' has both : and :: entries.  Stop."

if I comment out line 55 in the makefile.incl
"#ALL:    all"
it builds up on till a certain point, with a lot of warnings in the form
of:
"../../Makefile.incl:1168: warning: overriding commands for target
`.c.o'
../../Makefile.incl:1165: warning: ignoring old commands for target
`.c.o'"
looking at the makefile the makefile seems to expect to be case
sensitive, but the two commands are identical anyway.

Regardless it eventually fails with the errors I attached to my previous
email. By running some of the commands by hand and adding the Win32
version of the file you suggested I eventually managed to get it to
build, but any attempt I make to link against it fail.

Also the makefiles seem to think that MinGW needs the
Win32PlatformUtils.cpp, is this correct?

On Wed, 2009-09-23 at 03:03 -0400, Alberto Massari wrote:
> From the log is evident that you are not compiling the 
> xxxPlatformUtils.cpp source file. If you are manually tweaking the 
> makefile, try adding 
> src\xercesc\util\Platforms\Cygwin\CygwinPlatformUtils.cpp to the build.
> 
> Alberto
> 
> Dirk Walter wrote:
> > Hello I have been trying to build xerces 2.8 under either
> > i586-mingw32msvc-* (the cross compilation package provided by Ubuntu) or
> > for a windows machine using mingw and msys. In neither case have I been
> > having much success.
> >
> > I followed the instructions at
> > http://xerces.apache.org/xerces-c/build-winunix-2.html#MinGW and tried
> > to build using MinGW but it just won't build. I have attached the log
> > from the make, what am I doing wrong?
> >
> > I have fixed the makefile according to the build instructions and have
> > XERCESCROOT set.
> >   
> 


Re: Build Issues under MinGW

Posted by Alberto Massari <am...@datadirect.com>.
 From the log is evident that you are not compiling the 
xxxPlatformUtils.cpp source file. If you are manually tweaking the 
makefile, try adding 
src\xercesc\util\Platforms\Cygwin\CygwinPlatformUtils.cpp to the build.

Alberto

Dirk Walter wrote:
> Hello I have been trying to build xerces 2.8 under either
> i586-mingw32msvc-* (the cross compilation package provided by Ubuntu) or
> for a windows machine using mingw and msys. In neither case have I been
> having much success.
>
> I followed the instructions at
> http://xerces.apache.org/xerces-c/build-winunix-2.html#MinGW and tried
> to build using MinGW but it just won't build. I have attached the log
> from the make, what am I doing wrong?
>
> I have fixed the makefile according to the build instructions and have
> XERCESCROOT set.
>