]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/gtk/install.txt
Removed syntax errors in tdnd.tex
[wxWidgets.git] / docs / gtk / install.txt
index 0eb9f235a2e1975fcedebc2d26e00e97a588252a..728fd2f7493b4540331e0cb72994bda30c5a9aba 100644 (file)
@@ -1,8 +1,8 @@
 * The most simple case
 -----------------------
 
 * The most simple case
 -----------------------
 
-If you compile wxWindows on Unix for the first time and don't like
-to read install instructions just do (in the base dir):
+If you compile wxWindows on Unix for the first time and don't 
+like to read install instructions just do (in the base dir):
 
 ./configure --without-threads
 make
 
 ./configure --without-threads
 make
@@ -11,95 +11,84 @@ and drink 10 coffees. Then you may log in as root and type
 
 make install
 
 
 make install
 
-You can leave out the --without-threads option if you have a NEW
-Linux distribution based on glibc (e.g. RedHat 5.1) or any other
-Unix that comes with Posix threads or SGI threads.
+You can leave out the --without-threads option if you have 
+a NEW Linux distribution based on glibc (e.g. RedHat 5.1 or 
+Debian 2.0) or any other Unix that comes with Posix threads 
+or SGI threads.
 
 
-Now create your super-application myfoo.app and compile anywhere with
+Now create your super-application myfoo.app and compile anywhere 
+with
 
 
-gcc -o -c myfoo.cpp -I/usr/local/include -L/usr/local/lib -lwx_gtk
+g++ myfoo.cpp `wx-config --libs` `wx-config --cflags` -o myfoo
 
 * General
 -----------------------
 
 
 * General
 -----------------------
 
-The Unix variants of wxWindows use GNU configure. If you have problems 
-with your make use GNU make instead.
+The Unix variants of wxWindows use GNU configure. If you have 
+problems with your make use GNU make instead.
 
 
-Read my homepage at 
+If you have general problems with installation, read my 
+homepage at 
 
   http://wesley.informatik.uni-freiburg.de/~wxxt
   
 
   http://wesley.informatik.uni-freiburg.de/~wxxt
   
-for newest information.
+for newest information. If you still don't have any success,
+please send a bug report to one of our mailing lists (see
+my homepage) INCLUDING A DESCRIPTION OF YOUR SYSTEM AND 
+YOUR PROBLEM, SUCH AS YOUR VERSION OF GTK, WXGTK, WHAT
+DISTRIBUTION YOU USE AND WHAT ERROR WAS REPORTED. I know 
+this has no effect, but I tried...
 
 * GUI libraries
 -----------------------
 
 
 * GUI libraries
 -----------------------
 
-wxWindows requires a GUI toolkit to be installed. Does that make
-sense? So far only the GTK is supported, but we hope to provide
-the choice between GTK, Qt, Motif/Lesstif in the not so distant 
-future.
+wxWindows/GTK requires the GTK+ library to be installed on your system.
+It has to be a stable version, preferebly version 1.0.6. When using
+a version previous to 1.0.6 you'll get crashes here and there.
 
 
-You can get the newest version of the GTK from the GTK homepage
+wxWindows/GTK does NOT work with the 1.1.X versions of the GTK+ library
+and we will wait until the 1.2 version comes out and has stabilized
+until we'll work with that library.
+
+You can get the newest version of the GTK+ from the GTK homepage
 at
   http://www.gtk.org
   
 at
   http://www.gtk.org
   
-The newest versin of Qt can be downloaded for free from the Trolltec's 
-site at
-  http://www.troll.no
-
-Lesstif can be downloaded from their site
-at
-  http://www.lesstif.org
-
-If you want to develop using Motif, you need to buy it, unless it comes
-with your operating system such as all commercial Unices, as well as
-RedHat's, SuSe's and probably other's Linux Motif editions.
-
+We also mirror GTK+ 1.0.6 at our ftp site. You'll find information
+about downloading at my homepage.
+  
 * Additional libraries
 -----------------------
 
 * Additional libraries
 -----------------------
 
-There will be a few more features of wxWindows, which will 
-require further libraries (on some platforms). These
-features will be optional. I hope to teach configure
-to check that out automatically.
-
-Thread support:
-
-  Requires pthreads under Linux with glibc 2. pthreads are
-  always present on such systems, so just compile, unless
-  you have RedHat 5.0, which has a broken combination of
-  glibc 2 and X. In this case, you have to run configure
-  with "--without-threads".
-  
-  Requires PCthreads under Linux with libc 5. If you
-  haven't installed pcthreads, there will be no thread
-  support in wxWindows, but the library will compile.
-  
-  Requires Posix threads on commercial Unix system,
-  which are always present. Just compile.
-  
-  On SGI Irix we first look for sprocs, then pthreads and
-  use the last one found.
-  
-Python scripting language support:
-
-  Requires Python. Soon to come.
+wxWindows/Gtk requires a thread library and X libraries
+known to work with threads. This is the case on all
+commercial Unix-Variants and all Linux-Versions that
+are based on glibc 2 except RedHat 5.0 which is broken
+in many aspects. As of writing this, these Linux 
+distributions have correct glibc 2 support:
+
+ - RedHat 5.1
+ - Debian 2.0
+ - Stampede
+The next major version of SuSE will also support glibc 2,
+but version 5.X does not. Also Caldera and Slackware
+don't yet support glibc 2.
+
+On IRIX you can also use SGI threads if Posix-Threads
+are not present. The SGI threads will be detected by
+configure automatically.
+
+You can always disable thread support by running 
+
+./configure "--without-threads"
+make clean
+make
   
   
-* Other things to do
------------------------------
-
-wxGTK and wxMotif/wxLesstif require the built-in
-ImLib/GdkImlib to be configured. For that purpose
-copy the two files from /misc/imlib to your
-home directory and rename "imrc" -> ".imrc".
-You may also edit imrc by hand as you like. 
-The palette file is required when using
-wxWindows in 256-colour mode.
-
-If you want to use wxWindows's ODBC support, you'll have
-to create a .odbc.ini file. The readme file in 
-~/src/iodbc tells you what to do.
-
+NB: I included thread support in wxWindows/Gtk, as this 
+problem will disappear in the near future when all major 
+Linux Variants have moved to glibc 2. Also, the Linux
+Base Standard will include glibc 2.
 
 * Create your configuration
 -----------------------------
 
 * Create your configuration
 -----------------------------
@@ -188,15 +177,11 @@ The following options handle the kind of library you want to build.
 * Feature Options
 -------------------
 
 * Feature Options
 -------------------
 
-When using the Windows version of wxWindows, it is possible
-to edit the file /include/wx/msw/setup.h in order to enable
-or disable some features of wxWindows so that the resulting
-binaries get smaller.
-
 As I don't yet care for binary size and target mainly at
 producing a shared library, wxWindows's configure system auto-
 matically enables all features, as long as they are already
 As I don't yet care for binary size and target mainly at
 producing a shared library, wxWindows's configure system auto-
 matically enables all features, as long as they are already
-implemented.
+implemented. It is currently NOT possible to disable these
+options (in contrast to what configure tells you).
 
 * Compiling
 -------------
 
 * Compiling
 -------------
@@ -204,27 +189,21 @@ implemented.
 The following must be done in the base directory (e.g. ~/wxGTK
 or ~/wxWin or whatever)
 
 The following must be done in the base directory (e.g. ~/wxGTK
 or ~/wxWin or whatever)
 
-Dependencies are generated automatically using
-
-       make depend
-       
-(For some reason, this doesn't seem to work.)
-
-Now the makefiles are created you can compile everything is as simple
-as typing:
+Now the makefiles are created and you can compile everything 
+by typing:
 
        make
 
 make yourself some coffee, as it will try to compile ALL the 
 
        make
 
 make yourself some coffee, as it will try to compile ALL the 
-files in this distribution.
+files in this distribution. During compilation, you'll get
+a few warning messages.
 
 if you want to be more selective:
 
        make src        will build only the base libraries
 
 if you want to be more selective:
 
        make src        will build only the base libraries
-       make utils      will build the utils
        make samples    will build the samples
        make samples    will build the samples
-       make other      will build the other samples
-       make user       will build the files in the directory other
+       make other      will build everything in other
+       make user       will build everything in user
 
 Then you may install the library and it's header files under
 /usr/local/include/wx and /usr/local/lib respectively. You
 
 Then you may install the library and it's header files under
 /usr/local/include/wx and /usr/local/lib respectively. You
@@ -256,10 +235,34 @@ will do the work for you.
 * Creating a new Project
 --------------------------
 
 * Creating a new Project
 --------------------------
 
-There are two ways to create your own project. The first creates
-a project within the source code directories of wxWindows: In this
-case I propose to put all contributed programs in the directory
-"/user", with a directory of its own.
+There are two ways to create your own project:
+
+1) The first way uses the installed libraries and header files
+automatically using wx-config
+
+g++ myfoo.cpp `wx-config --libs` `wx-config --cflags` -o myfoo
+
+Using this way, a make file for the minimal sample would look
+like this
+
+CC = g++
+
+minimal: minimal.o
+    $(CC) -o minimal minimal.o `wx-config --libs` 
+
+minimal.o: minimal.cpp mondrian.xpm
+    $(CC) `wx-config --cflags` -c minimal.cpp -o minimal.o
+
+clean: 
+       rm -f *.o minimal
+
+This is certain to become the standard way unless we decide
+to sitch to tmake.
+
+2) The other way creates a project within the source code 
+directories of wxWindows: In this case I propose to put 
+all contributed programs in the directory "/user", with a 
+directory of its own.
 
 This directory then should include the following files:
 
 
 This directory then should include the following files:
 
@@ -274,12 +277,6 @@ Makefile.in        (This is the base application-Makefile template, from
 put ALL your source code along with all the other stuff you need for
 your application in this directory (subdirectories are welcome).
 
 put ALL your source code along with all the other stuff you need for
 your application in this directory (subdirectories are welcome).
 
-The other way uses the installed libraries and header files in 
-/usr/local/include/wx and /usr/local/lib. In this case, just
-compile your program like this:
-
-gcc -o -c myfoo.cpp -I/usr/local/include -L/usr/local/lib -lwx_gtk
-
 
 ** Something about Makefiles
 ------------------------------
 
 ** Something about Makefiles
 ------------------------------