From 222bb619fbdc3775767cde2d500c92d58ce1d499 Mon Sep 17 00:00:00 2001 From: Phil Edwards Date: Wed, 7 Feb 2001 00:03:21 +0000 Subject: configopts.html: Fix HTML markup. 2001-02-06 Phil Edwards * docs/html/configopts.html: Fix HTML markup. * docs/html/install.html: Bring up to date. * docs/html/17_intro/C++STYLE: Add global variable conventions. * docs/html/21_strings/howto.html: More notes. * docs/html/22_locale/howto.html: Fix HTML markup. * docs/html/27_io/howto.html: More notes. * docs/html/27_io/binary_iostreams_kanze.txt: New file. * docs/html/27_io/binary_iostreams_kuehl.txt: New file. From-SVN: r39503 --- libstdc++-v3/docs/html/install.html | 67 +++++++++---------------------------- 1 file changed, 16 insertions(+), 51 deletions(-) (limited to 'libstdc++-v3/docs/html/install.html') diff --git a/libstdc++-v3/docs/html/install.html b/libstdc++-v3/docs/html/install.html index be50063..fcc0c0d 100644 --- a/libstdc++-v3/docs/html/install.html +++ b/libstdc++-v3/docs/html/install.html @@ -7,7 +7,7 @@ libstdc++-v3 Installation Instructions - + @@ -58,7 +58,8 @@

If you don't have bash, and want to run 'make check' to test your build, you'll need to get bash 2.x. Also recommended is GNU Make, since it is the only 'make' that will parse these - makefiles correctly. + makefiles correctly. We are moving to DejaGNU, so you'll + probably want to get that.

As of June 19, 2000, libstdc++ attempts to use tricky and @@ -151,10 +152,11 @@

...with a gcc-2.9[67] snapshot

Unpack the gccsrcdir and go into that directory. For instance, gcc-2.95.2 is a valid gccsrcdir. - Once in gccsrcdir, you'll need to rename the libstdc++-v3 - directory which comes with that snapshot: + Once in gccsrcdir, you'll need to rename or delete + the libstdc++-v3 directory which comes with that snapshot:

-   mv libstdc++-v3 libstdc++-v3-previous
+ mv libstdc++-v3 libstdc++-v3-previous [OR] + rm -r libstdc++-v3

Next, unpack the libstdc++-v3 library tarball into the gccsrcdir directory; it will create a @@ -173,9 +175,11 @@

...with CVS gcc

Check out or download the gcc sources: the resulting source directory is gccsrcdir. Once in gccsrcdir, - you'll need to rename the libstdc++-v3 directory which comes - with that snapshot: - mv libstdc++-v3 libstdc++-v3-previous + you'll need to rename or delete the libstdc++-v3 directory + which comes with that snapshot: +

+   mv libstdc++-v3 libstdc++-v3-previous  [OR]
+   rm -r libstdc++-v3

Next, unpack the libstdc++-v3 library tarball into this gccsrcdir directory; it will create a @@ -208,13 +212,7 @@

    cd gccbuilddir
-   gccsrcdir/configure --prefix=destdir --enable-libstdcxx-v3
-

- -

Adding --enable-libstdcxx-v3 automatically selects libstdc++-v3 - as the C++ library to be used alongside the C++ compiler being built, - and also enables -fhonor-std by default. This option is not available - with gcc-2.95.2. + gccsrcdir/configure --prefix=destdir --other-opts...

@@ -239,10 +237,6 @@ This will configure and build the C++ library in the gccbuilddir/cpu-vendor-OS/libstdc++ directory.

-

If the build fails with a "warning: can't inline call" - message when compiling stringMAIN.cc, see the - resolution at the end of this document. -

If you are rebuilding from a previous build [attempt], some information is kept in a cache file. This is stored in gccbuilddir/cpu-vendor-OS/ if you are building with @@ -258,7 +252,7 @@ or

    make install-gcc
-   make install-target-libstdc++-rule
+ make install-target-libstdc++-v3

@@ -271,7 +265,7 @@ include/g++-v3/ bits/ ext/ - cpu-vendor-OS/include/g++-v3/ + CPU-vendor-OS/include/g++-v3/ bits/ ext/

@@ -326,35 +320,6 @@

-
-

warning: can't inline call to...

-

When building the .8 snapshot with g++ 2.95.2, compilation may halt - with this warning message. The "problem" is the -Werror - flag being passed to the compiler, which says to treat warnings as - errors. (This plus a high warning level makes us track down bugs - quickly.) The compiler can't inline a certain call, prints - a warning, and dies. -

-

The workaround is to edit either libsrcdir/src/Makefile.in - (before configuring) or bld-libstdc++/src/Makefile - (after configuring). There's one line that reads -

-   WERROR = -Werror
- Delete the flag itself, so that the line reads -
-   WERROR =
- Then the compiler will still print a warning, but it won't die. -

-

For the curious, this "problem" is actually a symptom - of something else. The compiler in CVS could inline more than what - 2.95.2 does, and the libstdc++ changes were made with that - compiler. One of the libstdc++ maintainers explains this -here. -

-

This has been patched in current CVS sources. -

- -