missing project/build files
[client-tools.git] / src / external / 3rd / library / stlport453 / INSTALL
blob14a31839535079a0e2c9bcaeed7cbb1c81ab64fd
1 **********************************************************************
2 *       INSTALL file for STLport 4.5                                 *
3 *                                                                    *
4 **********************************************************************
6 STLport-4.5 is a full ANSI C++ Standard library.
8 This distribution contains STLport sources only, no binaries.
9 To use STLport iostreams, you have to build STLport library from sources in "src" 
10 directory and link your programs with it.
12 This is major change since pre-4.0 releases, please read the instructions carefully.
14 ==== Unpacking and installing STLport ==========
16 1) Unpack STLport archive to a directory accessible during compilation.
17    NOTE : DO NOT overwrite header files coming with the compiler, even if you made
18    a backup - this won't work ! Most probably, you've already unpacked the archive before
19    reading this file though ;)
21 2) Make sure "stlport" directory of this distribution comes before compiler's one 
22    in your search path when you compile the project;
24    Note: for SunPro CC 5.0 and higher, there used to be special directory "stlport/SC5"
25          this is now obsolete, please make sure you do not use it anymore.
27 3) Make sure you do not rename this "stlport" subdirectory -
28    that may result in compilation errors.
30    NOTE : Do NOT attempt to run "configure" ! It is deprecated, moved to safe standalone folder
31           and should be used as a helper to create initial config for a new compiler only. 
32           Your compiler should be recognized by STLport source code with no configuring.
33           Please edit appropriate configuration header for your compiler
34           directly if you have to make compiler-specific configuration changes.
37 4)  Go to "src" subdirectory. It contains various makefiles for different 
38     compilers.  If you are not able to find makefile for your particular 
39     compiler, please use one that looks most similar to your make engine to 
40     create your own.
42     Verify you can do command line compiles. IDE users may have to do something 
43     special, like add environment variables (for Microsoft) or install 
44     additional compiler components (for Metrowerks), before they can use their 
45     command line compilers.
47    IMPORTANT :
49    If you DO NOT plan to use STLport iostreams implementation, you do not have to build the library.
50    Please do this instead  : 
52    4-1) Using appropriate makefile, do "make -f <your compiler name>.mak prepare".
53         Please do not skip this! On some platforms, it creates necessary symbolic links.
54         If you do build STLport iostream, this step is performed automatically when you do "make all".
56    4-2) uncomment _STLP_NO_OWN_IOSTREAMS setting in "stlport/stl_user_config.h" to disable use
57        of STLport iostreams and to use wrappers around your existing iostreams. 
58        After disabling STLport iostreams, you will use wrappers around  your compiler's iostreams 
59        libabry, as in previous STLport releases.
60        No binary library for STLport needs to be built in this case.
61        Note though :
62         - new-style ANSI iostreams may not be available on your system;
63         - compiler's iostreams are most likely slower than STLport version.
66   If you have decided to disable STLport iostreams, you may stop reading here.
69 ==== Building STLport iostreams library ==========
71 Below are step-by-step instructions to build STLport streams library:
73 5)  Using appropriate makefile, do "make clean all" to build the STLport libraries
74     (makefiles are set up to build several different flavors - debug/nondebug,
75     static/dynamic versions).
76     Optionally, do "make install" to copy STLport headers and libraries to shared location.
78     Note : your "make" program may have different name, like "nmake" for Visual C++.
80     Examples : 
81      1. If you are building STLport for just one compiler, you may do something like that
82         (DOS syntax for Visual C++ below):
83         copy vc6.mak makefile
84         nmake clean all
85         nmake install
87      2. If you plan to build STLport with multiple compilers, use "make -f" :
88         make -f gcc.mak clean install
89         make -f sunpro.mak clean install
91         This will build and install STLport for gcc & SUN CC.
93         "install" target works on most platforms.
95          On Win32, it does the following :
96           - copies STLport headers in "stlport" subdirectory of your compiler's INCLUDE directory;
97           - copies STLport .lib files in your compiler's LIB directory;
98           - copies STLport DLLs to Windows system directory so they can be found at runtime.
100          On UNIX, it does the following :
101           - copies STLport headers in "stlport" subdirectory of system's local include directory (default is /usr/local/include);
102           - copies STLport .a and .so files to system local library directory (default is /usr/local/lib);
104 6)  If build fails, you may choose to :
105      - try fixing the build ;
106      - wait until somebody else will submit corresponding changes to be incorporated in next STLport 
107        release/snapshot. To use STLport w/o its own iostreams, please do step 3a).
109     In case you do patch STLport, please submit your patches to support@stlport.com or (better)
110     to STLport Forum (http://www.stlport.com/cgi-bin/forum/dcboard.cgi)
112 7) Do "make install" to install resulting libraries into "./lib" subdirectory.
114 ==== Linking your application with STLport library ==========
116 8) Supply the "lib" subdirectory to the library search path and add desired 
117    library to the list of libraries to link with.
118    Examples (imagine you have mytest.cpp in the same directory as this file is):
119         With gcc     : gcc -I./stlport mytest.cpp -L./lib/ -lstlport_gcc
120         With DEC CC  : cxx -I./stlport mytest.cpp -L./lib/ -lstlport_deccxx
121         With SUN CC  : CC -I./stlport mytest.cpp -L./lib/ -lstlport_sunpro
122         .....
123    [ Visual C++ specific ] For VC++, you do not have to specify "stlport-msvc-XXX.lib" explicitly,
124    as it is being choosen and forced to link automatically by "#pragma"'s in stlport/config/stl_select_lib.h.
125    Appropriate version is being selected based on /MD[d] vs /MT[d] options and __STL_DEBUG setting.
126    All you have to do is to set library search path for the linker.
127         Example :
128            cl.exe /I.\stlport mytest.cpp /link /libpath:.\lib /MD
130 9) If you linked your application with shared STLport library (.so or .dll), please make your .so or
131    .dll's to be found in PATH at runtime. On Windows, the simplest way to do it
132    is to copy all .dll's to Windows system directory. Or, you might choose to add directory
133    containing STLport to the PATH environment string. 
135 10) Have fun !
137 05/10/01, Boris Fomitchev.