]> 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
 -----------------------
 
-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
@@ -11,95 +11,84 @@ and drink 10 coffees. Then you may log in as root and type
 
 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
 -----------------------
 
-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
   
-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
 -----------------------
 
-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
   
-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
 -----------------------
 
-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
 -----------------------------
@@ -188,15 +177,11 @@ The following options handle the kind of library you want to build.
 * 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
-implemented.
+implemented. It is currently NOT possible to disable these
+options (in contrast to what configure tells you).
 
 * Compiling
 -------------
@@ -204,27 +189,21 @@ implemented.
 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 
-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
-       make utils      will build the utils
        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
@@ -256,10 +235,34 @@ will do the work for you.
 * 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:
 
@@ -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).
 
-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
 ------------------------------