stdcxx-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Farid Zaripov <Farid_Zari...@epam.com>
Subject RE: Building stdcxx-4.2.1 Using MinGW+MSYS On Windows XP (SP2)
Date Thu, 27 Nov 2008 19:24:43 GMT
> I assume that you are building stdcxx-4.2.2 using Cygwin, and targeting
> MinGW. My objective is to build stdcxx-4.2.2 using MinGW. I don't use Cygwin
> and I don't plan to use it.

  Actually my goal is make it possible to build stdcxx/MinGW and stdcxx/Cygwin
using Cygwin environment as well as stdcxx/MinGW using MSYS environment.

> There were two fixes I had to make, to get the build of the patched
> stdcxx-4.2.2 to run:

[...]

> On the three lines marked ** above, I added an explicit file name after the
> $(buildpath) because the MinGW <ls> command, was REPLACING the
> /stdcxx-4.2.1/build/ directory name, with a link (named /stdcxx-4.2.1/build)
> to the file, instead of creating a link to the file (with the name of the
> file), IN the /stdcxx-4.2.1/build/ directory.

  I have no such problems when running make on MSYS.

> Fix #2 -- Your /stdcxx-4.2.2/build file:
> 
> I renamed the /stdcxx-4.2.2/build file that came with the svn download, to
> /stdcxx-4.2.1/build_faridz, because the presence of the build FILE was
> preventing the GNUmakefile from creating the /stdcxx-4.2.2/build/ DIRECTORY.

  Hmm, you must be wrong, we don't have any file with the name "build" in svn.

[...]

> There is an /stdcxx-4.2.2/build/liblibstd.a file of size 2.33 MB.

  My congratulations, you have just build the stdcxx library :)

> HOWEVER, the build ended with the following displayed on the MSYS console:

  When you run make without targets specified, the examples, tests, locales will be build.
Not all tests are compiling without errors on gcc/MinGW at the moment. It is ok.

  You can build the library only (without examples, tests and so on) using this command: "make
config lib"
Also I suggest to explicitly specify the build type. I.e.:

make BUILDDIR=/var/tmp/stdcxx-4.2.2/gcc/15d BUILDTYPE=15d config lib

> In the line "make[1]: [tests] Error 2 (ignored)", does the "(ignored)" mean
> that <make> did not terminate prematurely, and that file:
> 
>   /stdcxx-4.2.2/tests/regress/18.c.limits.stdcxx-988.cpp
>  
> is the last test source file to be compiled?

  I don't think so. The make should stop on the first error encountered unless make was executed
with "-k" option specified.

> According to the /stdcxx-4.2.2/README file, the last build step is the
> locale databases. The build I ran left the /stdcxx-4.2.2/nls/ directory
> completely EMPTY.

  Right, that because of make stopped on the compile error you mentioned above.
 
> Please let me know -- did the build complete successfully?

  It depends on what you want :) You have build the stdcxx library successfully, so now you
can compile
your programs with stdcxx.

> If not, and I
> need to fix the 18.c.limits.stdcxx-988.cpp compile error, what changes to I
> need to make to fix the compile error?

  18.c.limits.stdcxx-988.cpp is just one of the regression tests. It was not verified on gcc/MinGW
so
it fails to compile. But this failure doesn't means that there is some problem or bug in stdcxx
library.

Farid.

Mime
View raw message