]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/motif/install.txt
Virtualize showing/hiding the pages in wxBookCtrlBase.
[wxWidgets.git] / docs / motif / install.txt
index 42f57d8e8d8e44104e277610803376ac9a81a98f..262521885302ab7e7e2eefd5abc1cf58eb8660a5 100644 (file)
@@ -1,5 +1,5 @@
-wxWidgets 2.5 for Motif installation
-------------------------------------
+wxWidgets for Motif installation
+--------------------------------
 
 IMPORTANT NOTE:
 
@@ -11,7 +11,7 @@ IMPORTANT NOTE:
   
   When sending bug reports tell us what version of wxWidgets you are 
   using (including the beta) and what compiler on what system. One 
-  example: wxMotif 2.5.3, gcc 2.95.4, Redhat 6.1
+  example: wxMotif 2.8.1, gcc 2.95.4, Redhat 6.1
 
 First steps
 -----------
@@ -37,7 +37,7 @@ First steps
   Using configure is the only way to build the library. If it doesn't
   work for you for whatever reason, please report it (together with detailed
   information about your platform and the (relevant part of) contents of
-  config.log file) to wx-dev@lists.wxwindows.org.
+  config.log file) to wx-dev@lists.wxwidgets.org.
 
 
 COMPILING USING CONFIGURE
@@ -79,10 +79,10 @@ such as for GTK and Motif, you can now build two complete libraries and use
 them concurrently. For this end, you have to create a directory for each build 
 of wxWidgets - you may also want to create different versions of wxWidgets
 and test them concurrently. Most typically, this would be a version configured 
-with --enable-debug and one without. Note, that only one build can
-currently be installed, so you'd have to use local version of the library for
-that purpose.  For building three versions (one GTK, one Motif and a debug
-version of the GTK source) you'd do this:
+with --enable-debug and one without.
+
+For building three versions (one GTK, one Motif and a debug version of the GTK
+source) you'd do this:
 
 mkdir buildmotif
 cd buildmotif
@@ -102,6 +102,9 @@ cd buildgtkd
 make
 cd ..
 
+Note that since wxWidgets-2.6.0 you can install all those libraries
+concurrently, you just need to pass the appropriate flags when using them.
+
 * The simplest errors
 ---------------------
 
@@ -180,9 +183,8 @@ was actually used by myself, newer version should cause no problems and
 even older ones are expected to work most of the time.
 
 You'll need OS/2 Warp (4.51) or eCS(1.0), X-Free86/2 (3.3.6 or newer),
-Lesstif (0.92.7 or newer), emx (0.9d fix 4), flex (2.5.4), yacc (1.8) or
-bison (1.25), a Unix like shell (pdksh-5.2.14 or ash), Autoconf (2.57),
-GNU file utilities (3.13), GNU text utilities (1.19),
+Lesstif (0.92.7 or newer), emx (0.9d fix 4), a Unix like shell (pdksh-5.2.14
+or ash), Autoconf (2.57), GNU file utilities (3.13), GNU text utilities (1.19),
 GNU shell utilites (1.12), m4 (1.4), sed (2.05), grep (2.0), Awk (3.0.3),
 GNU Make (3.75).
 
@@ -191,15 +193,15 @@ LIBRARY_PATH set up accordingly, however, wxGTK will even work without it.
 Presence of Posix/2 will be auto-detected.
 
 Open an OS/2 prompt and switch to the directory above.
-Set MAKESHELL (and depending on your installation also INSTALL, for me
-it tends to try to use the system's tcpip\pcomos\install.exe which causes
-problems...) to a Unix like shell, e.g.
+Set MAKESHELL or MAKE_SHELL (which one is needed depends on the version of
+make) to a Unix like shell, e.g.
 SET MAKESHELL=ash
-
-Be warned that depending on the precise version of your make, the
-variable that needs to be set might be MAKE_SHELL instead of MAKESHELL.
 If you have a really deficient version of GNU make, it might even be
 necessary to set SHELL or even COMSPEC to a unix like shell as well. 
+Depending on your installation you might want to also set INSTALL, for me
+it tends to try to use the system's tcpip\pcomos\install.exe which causes
+problems, e.g.
+SET INSTALL=<path_to_src_directory>/install-sh -c
 
 Notice that the delivered configure scripts are fully OS/2 aware, so you
 can simply run
@@ -229,6 +231,20 @@ untested).
 
 The SGI native compiler support has only been tested on Irix 6.5.
 
+* Building wxMotif on Cygwin
+----------------------------
+
+The normal build instructions should work fine on Cygwin. The one difference
+with Cygwin is that when using the "--enable-shared" configure option (which
+is the default) the API is exported explicitly using __declspec(dllexport)
+rather than all global symbols being available.
+
+This shouldn't make a difference using the library and should be a little
+more efficient. However if an export attribute has been missed somewhere you
+will see linking errors. If this happens then you can work around the
+problem by setting LDFLAGS=-Wl,--export-all-symbols. Please also let us know
+about it on the wx-dev mailing list.
+
 * Create your configuration
 ---------------------------
 
@@ -280,19 +296,19 @@ The following options handle the kind of library you want to build.
 
        --disable-threads       Compile without thread support. Threads
                                support is also required for the
-                            socket code to work.
+                               socket code to work.
 
        --disable-shared        Do not create shared libraries.
 
-    --enable-monolithic     Build wxWidgets as single library instead
-                            of as several smaller libraries (which is
-                            the default since wxWidgets 2.5.0).
+       --enable-monolithic     Build wxWidgets as single library instead
+                               of as several smaller libraries (which is
+                               the default since wxWidgets 2.5.0).
 
        --disable-optimise      Do not optimise the code. Can
                                sometimes be useful for debugging
-                            and is required on some architectures
-                            such as Sun with gcc 2.8.X which
-                            would otherwise produce segvs.
+                               and is required on some architectures
+                               such as Sun with gcc 2.8.X which
+                               would otherwise produce segvs.
 
        --enable-profile        Add profiling info to the object 
                                files. Currently broken, I think.
@@ -311,16 +327,16 @@ The following options handle the kind of library you want to build.
        --enable-no_deps        Enable compilation without creation of
                                dependency information.
                                
-        --enable-permissive     Enable compilation without checking for strict
-                                ANSI conformance.  Useful to prevent the build
-                                dying with errors as soon as you compile with
-                                Solaris' ANSI-defying headers.
-                               
+       --enable-permissive     Enable compilation without checking for strict
+                               ANSI conformance.  Useful to prevent the build
+                               dying with errors as soon as you compile with
+                               Solaris' ANSI-defying headers.
+
        --enable-mem_tracing    Add built-in memory tracing. 
-                               
+
        --enable-dmalloc        Use the dmalloc memory debugger.
                                Read more at www.letters.com/dmalloc/
-                               
+
        --enable-debug          Equivalent to --enable-debug_info plus
                                --enable-debug-flag.
 
@@ -349,34 +365,34 @@ are not used in your program. The most relevant such features
 are
 
        --without-libpng        Disables PNG image format code.
-       
+
        --without-libjpeg       Disables JPEG image format code.
-       
+
        --without-odbc          Disables ODBC code.
-   
-    --without-libtiff       Disables TIFF image format code.
-    --without-expat         Disable XML classes based on Expat parser.
-       
+
+       --without-libtiff       Disables TIFF image format code.
+
+       --without-expat         Disable XML classes based on Expat parser.
+
        --disable-threads       Disables threads. Will also
                                disable sockets.
 
        --disable-sockets       Disables sockets.
 
        --disable-dnd           Disables Drag'n'Drop.
-       
+
        --disable-clipboard     Disables Clipboard.
-       
+
        --disable-streams       Disables the wxStream classes.
-       
+
        --disable-file          Disables the wxFile class.
-       
+
        --disable-textfile      Disables the wxTextFile class.
-       
+
        --disable-intl          Disables the internationalisation.
-       
+
        --disable-validators    Disables validators.
-       
+
        --disable-accel         Disables accel.
        
 Apart from disabling certain features you can very often "strip"
@@ -439,15 +455,12 @@ CXX = g++
 minimal: minimal.o
     $(CXX) -o minimal minimal.o `wx-config --libs` 
 
-minimal.o: minimal.cpp mondrian.xpm
+minimal.o: minimal.cpp
     $(CXX) `wx-config --cxxflags` -c minimal.cpp -o minimal.o
 
 clean: 
        rm -f *.o minimal
 
-This is certain to become the standard way unless we decide
-to stick to tmake.
-
 If your application uses only some of wxWidgets libraries, you can
 specify required libraries when running wx-config. For example,
 `wx-config --libs=html,core` will only output link command to link
@@ -524,7 +537,7 @@ Bug reports
 Please send bug reports with a description of your environment,
 compiler and the error message(s) to the wxwin-developers mailing list at:
 
-    wx-dev@lists.wxwindows.org
+    wx-dev@lists.wxwidgets.org
 
 Julian Smart, Robert Roebling and Vadim Zeitlin, November 1999.