Integrate X11 and Motif install instructions into doxygen
This commit is contained in:
@@ -294,9 +294,11 @@ INPUT = mainpages \
|
|||||||
overviews \
|
overviews \
|
||||||
../gtk \
|
../gtk \
|
||||||
../ios \
|
../ios \
|
||||||
|
../motif \
|
||||||
../msw \
|
../msw \
|
||||||
../osx \
|
../osx \
|
||||||
../qt \
|
../qt \
|
||||||
|
../x11 \
|
||||||
../../interface
|
../../interface
|
||||||
INPUT_ENCODING = UTF-8
|
INPUT_ENCODING = UTF-8
|
||||||
FILE_PATTERNS = *.h *.md
|
FILE_PATTERNS = *.h *.md
|
||||||
|
@@ -80,8 +80,9 @@ In order to configure wxWidgets to compile wxX11 you will need to type:
|
|||||||
|
|
||||||
@verbatim configure --with-x11 --with-universal @endverbatim
|
@verbatim configure --with-x11 --with-universal @endverbatim
|
||||||
|
|
||||||
For further information, please see the files in @c docs/x11 in the
|
@subpage plat_x11_install "Build Instructions"
|
||||||
distribution. There is also a page on the use of wxWidgets for embedded
|
|
||||||
|
There is also a page on the use of wxWidgets for embedded
|
||||||
applications on the wxWidgets web site.
|
applications on the wxWidgets web site.
|
||||||
|
|
||||||
|
|
||||||
@@ -92,8 +93,8 @@ wxMotif is a port of wxWidgets for X11 systems using Motif libraries. Motif
|
|||||||
libraries provide a clean and fast user interface at the expense of the beauty
|
libraries provide a clean and fast user interface at the expense of the beauty
|
||||||
and candy of newer interfaces like GTK.
|
and candy of newer interfaces like GTK.
|
||||||
|
|
||||||
For further information, please see the files in @c docs/motif in the
|
@subpage plat_motif_install "Build Instructions"
|
||||||
distribution.
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -1,6 +1,8 @@
|
|||||||
wxWidgets for Motif installation
|
wxWidgets for Motif installation {#plat_motif_install}
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
|
||||||
|
[TOC]
|
||||||
|
|
||||||
IMPORTANT NOTE:
|
IMPORTANT NOTE:
|
||||||
|
|
||||||
If you experience problems installing, please re-read these
|
If you experience problems installing, please re-read these
|
||||||
@@ -40,38 +42,38 @@ First steps
|
|||||||
config.log file).
|
config.log file).
|
||||||
|
|
||||||
|
|
||||||
COMPILING USING CONFIGURE
|
Compiling using configure {#motif_configure}
|
||||||
=========================
|
=========================
|
||||||
|
|
||||||
* The simplest case
|
The simplest case {#motif_simple}
|
||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
If you compile wxWidgets on Linux for the first time and don't like to read
|
If you compile wxWidgets on Linux for the first time and don't like to read
|
||||||
install instructions just do (in the base dir):
|
install instructions just do (in the base dir):
|
||||||
|
|
||||||
> ./configure --with-motif
|
> ./configure --with-motif
|
||||||
> make
|
> make
|
||||||
> su <type root password>
|
> su <type root password>
|
||||||
> make install
|
> make install
|
||||||
> ldconfig
|
> ldconfig
|
||||||
> exit
|
> exit
|
||||||
|
|
||||||
Afterwards you can continue with
|
Afterwards you can continue with
|
||||||
|
|
||||||
> make
|
> make
|
||||||
> su <type root password>
|
> su <type root password>
|
||||||
> make install
|
> make install
|
||||||
> ldconfig
|
> ldconfig
|
||||||
> exit
|
> exit
|
||||||
|
|
||||||
If you want to remove wxWidgets on Unix you can do this:
|
If you want to remove wxWidgets on Unix you can do this:
|
||||||
|
|
||||||
> su <type root password>
|
> su <type root password>
|
||||||
> make uninstall
|
> make uninstall
|
||||||
> ldconfig
|
> ldconfig
|
||||||
> exit
|
> exit
|
||||||
|
|
||||||
* The expert case
|
The expert case {#motif_expert}
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
If you want to do some more serious cross-platform programming with wxWidgets,
|
If you want to do some more serious cross-platform programming with wxWidgets,
|
||||||
@@ -84,28 +86,28 @@ with --enable-debug and one without.
|
|||||||
For building three versions (one GTK, one Motif and a debug version of the GTK
|
For building three versions (one GTK, one Motif and a debug version of the GTK
|
||||||
source) you'd do this:
|
source) you'd do this:
|
||||||
|
|
||||||
mkdir buildmotif
|
mkdir buildmotif
|
||||||
cd buildmotif
|
cd buildmotif
|
||||||
../configure --with-motif
|
../configure --with-motif
|
||||||
make
|
make
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
mkdir buildgtk
|
mkdir buildgtk
|
||||||
cd buildgtk
|
cd buildgtk
|
||||||
../configure --with-gtk
|
../configure --with-gtk
|
||||||
make
|
make
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
mkdir buildgtkd
|
mkdir buildgtkd
|
||||||
cd buildgtkd
|
cd buildgtkd
|
||||||
../configure --with-gtk --enable-debug
|
../configure --with-gtk --enable-debug
|
||||||
make
|
make
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
Note that since wxWidgets-2.6.0 you can install all those libraries
|
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.
|
concurrently, you just need to pass the appropriate flags when using them.
|
||||||
|
|
||||||
* The simplest errors
|
The simplest errors {#motif_error_simple}
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
You get errors during compilation: The reason is that you probably have a
|
You get errors during compilation: The reason is that you probably have a
|
||||||
@@ -115,18 +117,18 @@ GCC 2.95 or later.
|
|||||||
|
|
||||||
You get immediate segfault when starting any sample or application: This is
|
You get immediate segfault when starting any sample or application: This is
|
||||||
either due to having compiled the library with different flags or options than
|
either due to having compiled the library with different flags or options than
|
||||||
your program - typically you might have the __WXDEBUG__ option set for the
|
your program - typically you might have the `__WXDEBUG__` option set for the
|
||||||
library but not for your program - or due to using a compiler with optimisation
|
library but not for your program - or due to using a compiler with optimisation
|
||||||
bugs.
|
bugs.
|
||||||
|
|
||||||
* The simplest program
|
The simplest program {#motif_simple_app}
|
||||||
----------------------
|
----------------------
|
||||||
|
|
||||||
Now create your super-application myfoo.app and compile anywhere with
|
Now create your super-application myfoo.app and compile anywhere with
|
||||||
|
|
||||||
g++ myfoo.cpp `wx-config --libs --cxxflags` -o myfoo
|
g++ myfoo.cpp `wx-config --libs --cxxflags` -o myfoo
|
||||||
|
|
||||||
* General
|
General {#motif_general}
|
||||||
---------
|
---------
|
||||||
|
|
||||||
The Unix variants of wxWidgets use GNU configure. If you have problems with
|
The Unix variants of wxWidgets use GNU configure. If you have problems with
|
||||||
@@ -134,7 +136,7 @@ your make use GNU make instead.
|
|||||||
|
|
||||||
If you have general problems with installation, see the wxWidgets website at
|
If you have general problems with installation, see the wxWidgets website at
|
||||||
|
|
||||||
https://www.wxwidgets.org/
|
https://www.wxwidgets.org/
|
||||||
|
|
||||||
for newest information. If you still don't have any success, please send a bug
|
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
|
report to one of our mailing lists (see my homepage) INCLUDING A DESCRIPTION OF
|
||||||
@@ -142,7 +144,7 @@ YOUR SYSTEM AND YOUR PROBLEM, SUCH AS YOUR VERSION OF MOTIF, WXMOTIF, WHAT
|
|||||||
DISTRIBUTION YOU USE AND WHAT ERROR WAS REPORTED. I know this has no effect,
|
DISTRIBUTION YOU USE AND WHAT ERROR WAS REPORTED. I know this has no effect,
|
||||||
but I tried...
|
but I tried...
|
||||||
|
|
||||||
* GUI libraries
|
GUI libraries {#motif_libs_gui}
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
wxWidgets/Motif requires the Motif library to be installed on your system. As
|
wxWidgets/Motif requires the Motif library to be installed on your system. As
|
||||||
@@ -151,9 +153,9 @@ most of the Motif API without the licence restrictions of Motif.
|
|||||||
|
|
||||||
You can get the newest version of the Lesstif from the lesstif homepage at:
|
You can get the newest version of the Lesstif from the lesstif homepage at:
|
||||||
|
|
||||||
http://lesstif.sourceforge.net/
|
http://lesstif.sourceforge.net/
|
||||||
|
|
||||||
* Additional libraries
|
Additional libraries {#motif_libs_misc}
|
||||||
----------------------
|
----------------------
|
||||||
|
|
||||||
wxWidgets/Motif requires a thread library and X libraries known to work with
|
wxWidgets/Motif requires a thread library and X libraries known to work with
|
||||||
@@ -164,14 +166,14 @@ correct glibc 2 support.
|
|||||||
|
|
||||||
You can disable thread support by running
|
You can disable thread support by running
|
||||||
|
|
||||||
./configure --disable-threads
|
./configure --disable-threads
|
||||||
make
|
make
|
||||||
su <type root password>
|
su <type root password>
|
||||||
make install
|
make install
|
||||||
ldconfig
|
ldconfig
|
||||||
exit
|
exit
|
||||||
|
|
||||||
* Building wxMotif on Cygwin
|
Building wxMotif on Cygwin {#motif_cygwin}
|
||||||
----------------------------
|
----------------------------
|
||||||
|
|
||||||
The normal build instructions should work fine on Cygwin. The one difference
|
The normal build instructions should work fine on Cygwin. The one difference
|
||||||
@@ -185,10 +187,11 @@ 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
|
problem by setting LDFLAGS=-Wl,--export-all-symbols. Please also let us know
|
||||||
about it on the wx-dev mailing list.
|
about it on the wx-dev mailing list.
|
||||||
|
|
||||||
* Create your configuration
|
Create your configuration {#motif_config}
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
||||||
Usage:
|
Usage:
|
||||||
|
|
||||||
./configure [options]
|
./configure [options]
|
||||||
|
|
||||||
If you want to use system's C and C++ compiler,
|
If you want to use system's C and C++ compiler,
|
||||||
@@ -216,7 +219,7 @@ Configure will complain if the system variable OSTYPE has
|
|||||||
not been defined. And Make in some circumstances as well...
|
not been defined. And Make in some circumstances as well...
|
||||||
|
|
||||||
|
|
||||||
* General options
|
General options {#motif_options}
|
||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
Given below are the commands to change the default behaviour,
|
Given below are the commands to change the default behaviour,
|
||||||
@@ -289,7 +292,7 @@ The following options handle the kind of library you want to build.
|
|||||||
must be compiled with the same debug
|
must be compiled with the same debug
|
||||||
options.
|
options.
|
||||||
|
|
||||||
* Feature Options
|
Feature Options {#motif_feature_options}
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
Many of the configure options have been thoroughly tested
|
Many of the configure options have been thoroughly tested
|
||||||
@@ -338,7 +341,7 @@ Please see the output of "./configure --help" for comprehensive list
|
|||||||
of all configurable options.
|
of all configurable options.
|
||||||
|
|
||||||
|
|
||||||
* Compiling
|
Compiling {#motif_compile}
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
The following must be done in the base directory (e.g. ~/wxMotif
|
The following must be done in the base directory (e.g. ~/wxMotif
|
||||||
@@ -374,41 +377,41 @@ object-files:
|
|||||||
|
|
||||||
in the various directories will do the work for you.
|
in the various directories will do the work for you.
|
||||||
|
|
||||||
* Creating a new Project
|
Creating a new Project {#motif_new_project}
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
1) The first way uses the installed libraries and header files
|
1. The first way uses the installed libraries and header files
|
||||||
automatically using wx-config
|
automatically using wx-config
|
||||||
|
|
||||||
g++ myfoo.cpp `wx-config --libs` `wx-config --cxxflags` -o myfoo
|
g++ myfoo.cpp `wx-config --libs` `wx-config --cxxflags` -o myfoo
|
||||||
|
|
||||||
Using this way, a make file for the minimal sample would look
|
Using this way, a make file for the minimal sample would look
|
||||||
like this
|
like this
|
||||||
|
|
||||||
CXX = g++
|
CXX = g++
|
||||||
|
|
||||||
minimal: minimal.o
|
minimal: minimal.o
|
||||||
$(CXX) -o minimal minimal.o `wx-config --libs`
|
$(CXX) -o minimal minimal.o `wx-config --libs`
|
||||||
|
|
||||||
minimal.o: minimal.cpp
|
minimal.o: minimal.cpp
|
||||||
$(CXX) `wx-config --cxxflags` -c minimal.cpp -o minimal.o
|
$(CXX) `wx-config --cxxflags` -c minimal.cpp -o minimal.o
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.o minimal
|
rm -f *.o minimal
|
||||||
|
|
||||||
If your application uses only some of wxWidgets libraries, you can
|
If your application uses only some of wxWidgets libraries, you can
|
||||||
specify required libraries when running wx-config. For example,
|
specify required libraries when running wx-config. For example,
|
||||||
`wx-config --libs=html,core` will only output link command to link
|
`wx-config --libs=html,core` will only output link command to link
|
||||||
with libraries required by core GUI classes and wxHTML classes. See
|
with libraries required by core GUI classes and wxHTML classes. See
|
||||||
the manual for more information on the libraries.
|
the manual for more information on the libraries.
|
||||||
|
|
||||||
2) The other way creates a project within the source code
|
2. The other way creates a project within the source code
|
||||||
directories of wxWidgets. For this endeavour, you'll need
|
directories of wxWidgets. For this endeavour, you'll need
|
||||||
GNU autoconf version 2.14 and add an entry to your Makefile.in
|
GNU autoconf version 2.14 and add an entry to your Makefile.in
|
||||||
to the bottom of the configure.in script and run autoconf
|
to the bottom of the configure.in script and run autoconf
|
||||||
and configure before you can type make.
|
and configure before you can type make.
|
||||||
|
|
||||||
* Further notes by Julian Smart
|
Further notes by Julian Smart {#motif_notes}
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
- You may find the following script useful for compiling wxMotif,
|
- You may find the following script useful for compiling wxMotif,
|
||||||
@@ -416,25 +419,23 @@ and configure before you can type make.
|
|||||||
permissions). Make this script executable with the command
|
permissions). Make this script executable with the command
|
||||||
chmod a+x makewxmotif.
|
chmod a+x makewxmotif.
|
||||||
|
|
||||||
-------:x-----Cut here-----:x-----
|
# makewxmotif
|
||||||
# makewxmotif
|
# Sets permissions (in case we extracted wxMotif from zip files)
|
||||||
# Sets permissions (in case we extracted wxMotif from zip files)
|
# and makes wxMotif.
|
||||||
# and makes wxMotif.
|
# Call from top-level wxWidgets directory.
|
||||||
# Call from top-level wxWidgets directory.
|
# Note that this uses standard (but commonly-used) configure options;
|
||||||
# Note that this uses standard (but commonly-used) configure options;
|
# if you're feeling brave, you may wish to compile with threads:
|
||||||
# if you're feeling brave, you may wish to compile with threads:
|
# if they're not supported by the target platform, they will be disabled
|
||||||
# if they're not supported by the target platform, they will be disabled
|
# anyhow
|
||||||
# anyhow
|
# -- Julian Smart
|
||||||
# -- Julian Smart
|
chmod a+x configure config.sub config.guess
|
||||||
chmod a+x configure config.sub config.guess
|
./configure --with-shared --with-motif --with-debug_flag --with-debug_info --enable-debug --without-threads --without-sockets --without-odbc
|
||||||
./configure --with-shared --with-motif --with-debug_flag --with-debug_info --enable-debug --without-threads --without-sockets --without-odbc
|
make
|
||||||
make
|
|
||||||
-------:x-----Cut here-----:x-----
|
|
||||||
|
|
||||||
This script will build wxMotif using shared libraries. If you want to build
|
This script will build wxMotif using shared libraries. If you want to build
|
||||||
a static wxWidgets library, use --disable-shared.
|
a static wxWidgets library, use --disable-shared.
|
||||||
|
|
||||||
Troubleshooting
|
Troubleshooting {#motif_troubleshoot}
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
- Solaris compilation with gcc: if the compiler has problems with the variable
|
- Solaris compilation with gcc: if the compiler has problems with the variable
|
||||||
@@ -458,20 +459,10 @@ Troubleshooting
|
|||||||
If you find any incorrect instances, though, such as a
|
If you find any incorrect instances, though, such as a
|
||||||
missing 'const' in an overridden function, please let us know.
|
missing 'const' in an overridden function, please let us know.
|
||||||
|
|
||||||
Other Notes
|
Other Notes {#motif_misc}
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
- Using configure will create a release build of the library by
|
- Using configure will create a release build of the library by
|
||||||
default: it's recommended to use --enable-debug configure switch
|
default: it's recommended to use --enable-debug configure switch
|
||||||
while developing your application. To compile in non-debug mode, use
|
while developing your application. To compile in non-debug mode, use
|
||||||
--disable-debug configure switch.
|
--disable-debug configure switch.
|
||||||
|
|
||||||
Bug reports
|
|
||||||
-----------
|
|
||||||
|
|
||||||
Please send bug reports with a description of your environment,
|
|
||||||
compiler and the error message(s) to the developers mailing list at:
|
|
||||||
|
|
||||||
https://www.wxwidgets.org/support/mailing-lists/
|
|
||||||
|
|
||||||
Julian Smart, Robert Roebling and Vadim Zeitlin, November 1999.
|
|
@@ -1,6 +1,8 @@
|
|||||||
wxWidgets for X11 installation
|
wxWidgets for X11 installation {#plat_x11_install}
|
||||||
------------------------------
|
------------------------------
|
||||||
|
|
||||||
|
[TOC]
|
||||||
|
|
||||||
IMPORTANT NOTE:
|
IMPORTANT NOTE:
|
||||||
|
|
||||||
If you experience problems installing, please re-read these
|
If you experience problems installing, please re-read these
|
||||||
@@ -13,7 +15,7 @@ IMPORTANT NOTE:
|
|||||||
using (including the beta) and what compiler on what system. One
|
using (including the beta) and what compiler on what system. One
|
||||||
example: wxX11 2.8.0, gcc 2.95.4, Redhat 6.2
|
example: wxX11 2.8.0, gcc 2.95.4, Redhat 6.2
|
||||||
|
|
||||||
First steps
|
First steps {#x11_first_steps}
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
- Download wxX11-x.y.z.tgz, where x.y.z is the version number.
|
- Download wxX11-x.y.z.tgz, where x.y.z is the version number.
|
||||||
@@ -34,38 +36,38 @@ First steps
|
|||||||
information about your platform and the (relevant part of) contents of
|
information about your platform and the (relevant part of) contents of
|
||||||
config.log file).
|
config.log file).
|
||||||
|
|
||||||
COMPILING USING CONFIGURE
|
Compiling using configure {#x11_configure}
|
||||||
=========================
|
=========================
|
||||||
|
|
||||||
* The simplest case
|
The simplest case {#x11_simple}
|
||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
If you compile wxWidgets on Linux for the first time and don't like to read
|
If you compile wxWidgets on Linux for the first time and don't like to read
|
||||||
install instructions just do (in the base dir):
|
install instructions just do (in the base dir):
|
||||||
|
|
||||||
> ./configure --with-x11
|
> ./configure --with-x11
|
||||||
> make
|
> make
|
||||||
> su <type root password>
|
> su <type root password>
|
||||||
> make install
|
> make install
|
||||||
> ldconfig
|
> ldconfig
|
||||||
> exit
|
> exit
|
||||||
|
|
||||||
Afterwards you can continue with
|
Afterwards you can continue with
|
||||||
|
|
||||||
> make
|
> make
|
||||||
> su <type root password>
|
> su <type root password>
|
||||||
> make install
|
> make install
|
||||||
> ldconfig
|
> ldconfig
|
||||||
> exit
|
> exit
|
||||||
|
|
||||||
If you want to remove wxWidgets on Unix you can do this:
|
If you want to remove wxWidgets on Unix you can do this:
|
||||||
|
|
||||||
> su <type root password>
|
> su <type root password>
|
||||||
> make uninstall
|
> make uninstall
|
||||||
> ldconfig
|
> ldconfig
|
||||||
> exit
|
> exit
|
||||||
|
|
||||||
* The expert case
|
The expert case {#x11_expert}
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
If you want to do some more serious cross-platform programming with wxWidgets,
|
If you want to do some more serious cross-platform programming with wxWidgets,
|
||||||
@@ -80,25 +82,25 @@ that purpose.
|
|||||||
For building three versions (one GTK, one X11 and a debug version of the GTK
|
For building three versions (one GTK, one X11 and a debug version of the GTK
|
||||||
source) you'd do this:
|
source) you'd do this:
|
||||||
|
|
||||||
md buildx11
|
md buildx11
|
||||||
cd buildx11
|
cd buildx11
|
||||||
../configure --with-x11
|
../configure --with-x11
|
||||||
make
|
make
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
md buildgtk
|
md buildgtk
|
||||||
cd buildgtk
|
cd buildgtk
|
||||||
../configure --with-gtk
|
../configure --with-gtk
|
||||||
make
|
make
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
md buildgtkd
|
md buildgtkd
|
||||||
cd buildgtkd
|
cd buildgtkd
|
||||||
../configure --with-gtk --enable-debug_flag
|
../configure --with-gtk --enable-debug_flag
|
||||||
make
|
make
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
* The simplest errors
|
The simplest errors {#x11_errors}
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
You get errors during compilation: The reason is that you probably have a
|
You get errors during compilation: The reason is that you probably have a
|
||||||
@@ -108,18 +110,18 @@ GCC 2.95 or later.
|
|||||||
|
|
||||||
You get immediate segfault when starting any sample or application: This is
|
You get immediate segfault when starting any sample or application: This is
|
||||||
either due to having compiled the library with different flags or options than
|
either due to having compiled the library with different flags or options than
|
||||||
your program - typically you might have the __WXDEBUG__ option set for the
|
your program - typically you might have the `__WXDEBUG__` option set for the
|
||||||
library but not for your program - or due to using a compiler with optimisation
|
library but not for your program - or due to using a compiler with optimisation
|
||||||
bugs.
|
bugs.
|
||||||
|
|
||||||
* The simplest program
|
The simplest program {#x11_simple_app}
|
||||||
----------------------
|
----------------------
|
||||||
|
|
||||||
Now create your super-application myfoo.cpp and compile anywhere with
|
Now create your super-application myfoo.cpp and compile anywhere with
|
||||||
|
|
||||||
g++ myfoo.cpp `wx-config --libs --cxxflags` -o myfoo
|
g++ myfoo.cpp `wx-config --libs --cxxflags` -o myfoo
|
||||||
|
|
||||||
* General
|
General {#x11_general}
|
||||||
---------
|
---------
|
||||||
|
|
||||||
The Unix variants of wxWidgets use GNU configure. If you have problems with
|
The Unix variants of wxWidgets use GNU configure. If you have problems with
|
||||||
@@ -127,19 +129,19 @@ your make use GNU make instead.
|
|||||||
|
|
||||||
If you have general problems with installation, see the wxWidgets website at
|
If you have general problems with installation, see the wxWidgets website at
|
||||||
|
|
||||||
https://www.wxwidgets.org/
|
https://www.wxwidgets.org/
|
||||||
|
|
||||||
for newest information. If you still don't have any success, please send a bug
|
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
|
report to one of our mailing lists (see my homepage) INCLUDING A DESCRIPTION OF
|
||||||
YOUR SYSTEM AND YOUR PROBLEM, SUCH AS YOUR VERSION OF X, WHAT DISTRIBUTION
|
YOUR SYSTEM AND YOUR PROBLEM, SUCH AS YOUR VERSION OF X, WHAT DISTRIBUTION
|
||||||
YOU USE AND WHAT ERROR WAS REPORTED. I know this has no effect, but I tried...
|
YOU USE AND WHAT ERROR WAS REPORTED. I know this has no effect, but I tried...
|
||||||
|
|
||||||
* GUI libraries
|
GUI libraries {#x11_libs_gui}
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
wxWidgets/X11 requires the X11 library to be installed on your system.
|
wxWidgets/X11 requires the X11 library to be installed on your system.
|
||||||
|
|
||||||
* Additional libraries
|
Additional libraries {#x11_libs_misc}
|
||||||
----------------------
|
----------------------
|
||||||
|
|
||||||
wxWidgets/X11 requires a thread library and X libraries known to work with
|
wxWidgets/X11 requires a thread library and X libraries known to work with
|
||||||
@@ -150,14 +152,14 @@ many aspects. As of writing this, virtually all Linux distributions have
|
|||||||
|
|
||||||
You can disable thread support by running
|
You can disable thread support by running
|
||||||
|
|
||||||
./configure --disable-threads
|
./configure --disable-threads
|
||||||
make
|
make
|
||||||
su <type root password>
|
su <type root password>
|
||||||
make install
|
make install
|
||||||
ldconfig
|
ldconfig
|
||||||
exit
|
exit
|
||||||
|
|
||||||
* Building wxX11 on Cygwin
|
Building wxX11 on Cygwin {#x11_cygwin}
|
||||||
--------------------------
|
--------------------------
|
||||||
|
|
||||||
The normal build instructions should work fine on Cygwin. The one difference
|
The normal build instructions should work fine on Cygwin. The one difference
|
||||||
@@ -171,10 +173,11 @@ 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
|
problem by setting LDFLAGS=-Wl,--export-all-symbols. Please also let us know
|
||||||
about it on the wx-dev mailing list.
|
about it on the wx-dev mailing list.
|
||||||
|
|
||||||
* Create your configuration
|
Create your configuration {#x11_config}
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
||||||
Usage:
|
Usage:
|
||||||
|
|
||||||
./configure [options]
|
./configure [options]
|
||||||
|
|
||||||
If you want to use system's C and C++ compiler,
|
If you want to use system's C and C++ compiler,
|
||||||
@@ -202,7 +205,7 @@ Configure will complain if the system variable OSTYPE has
|
|||||||
not been defined. And Make in some circumstances as well...
|
not been defined. And Make in some circumstances as well...
|
||||||
|
|
||||||
|
|
||||||
* General options
|
General options {#x11_options}
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
Given below are the commands to change the default behaviour,
|
Given below are the commands to change the default behaviour,
|
||||||
@@ -268,7 +271,7 @@ The following options handle the kind of library you want to build.
|
|||||||
must be compiled with the same debug
|
must be compiled with the same debug
|
||||||
options.
|
options.
|
||||||
|
|
||||||
* Feature Options
|
Feature Options {#x11_feature_options}
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
Many of the configure options have been thoroughly tested
|
Many of the configure options have been thoroughly tested
|
||||||
@@ -320,7 +323,7 @@ Please see the output of "./configure --help" for comprehensive list
|
|||||||
of all configurable options.
|
of all configurable options.
|
||||||
|
|
||||||
|
|
||||||
* Compiling
|
Compiling {#x11_compiling}
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
The following must be done in the base directory (e.g. ~/wxX11
|
The following must be done in the base directory (e.g. ~/wxX11
|
||||||
@@ -356,44 +359,44 @@ object-files:
|
|||||||
|
|
||||||
in the various directories will do the work for you.
|
in the various directories will do the work for you.
|
||||||
|
|
||||||
* Creating a new Project
|
Creating a new Project {#x11_new_app}
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
1) The first way uses the installed libraries and header files
|
1. The first way uses the installed libraries and header files
|
||||||
automatically using wx-config
|
automatically using wx-config
|
||||||
|
|
||||||
g++ myfoo.cpp `wx-config --libs` `wx-config --cxxflags` -o myfoo
|
g++ myfoo.cpp `wx-config --libs` `wx-config --cxxflags` -o myfoo
|
||||||
|
|
||||||
Using this way, a make file for the minimal sample would look
|
Using this way, a make file for the minimal sample would look
|
||||||
like this
|
like this
|
||||||
|
|
||||||
CXX = g++
|
CXX = g++
|
||||||
|
|
||||||
minimal: minimal.o
|
minimal: minimal.o
|
||||||
$(CXX) -o minimal minimal.o `wx-config --libs`
|
$(CXX) -o minimal minimal.o `wx-config --libs`
|
||||||
|
|
||||||
minimal.o: minimal.cpp
|
minimal.o: minimal.cpp
|
||||||
$(CXX) `wx-config --cxxflags` -c minimal.cpp -o minimal.o
|
$(CXX) `wx-config --cxxflags` -c minimal.cpp -o minimal.o
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f *.o minimal
|
rm -f *.o minimal
|
||||||
|
|
||||||
This is certain to become the standard way unless we decide
|
This is certain to become the standard way unless we decide
|
||||||
to stick to tmake.
|
to stick to tmake.
|
||||||
|
|
||||||
If your application uses only some of wxWidgets libraries, you can
|
If your application uses only some of wxWidgets libraries, you can
|
||||||
specify required libraries when running wx-config. For example,
|
specify required libraries when running wx-config. For example,
|
||||||
`wx-config --libs=html,core` will only output link command to link
|
`wx-config --libs=html,core` will only output link command to link
|
||||||
with libraries required by core GUI classes and wxHTML classes. See
|
with libraries required by core GUI classes and wxHTML classes. See
|
||||||
the manual for more information on the libraries.
|
the manual for more information on the libraries.
|
||||||
|
|
||||||
2) The other way creates a project within the source code
|
2. The other way creates a project within the source code
|
||||||
directories of wxWidgets. For this endeavour, you'll need
|
directories of wxWidgets. For this endeavour, you'll need
|
||||||
GNU autoconf version 2.14 and add an entry to your Makefile.in
|
GNU autoconf version 2.14 and add an entry to your Makefile.in
|
||||||
to the bottom of the configure.in script and run autoconf
|
to the bottom of the configure.in script and run autoconf
|
||||||
and configure before you can type make.
|
and configure before you can type make.
|
||||||
|
|
||||||
* Further notes by Julian Smart
|
Further notes by Julian Smart {#x11_notes}
|
||||||
-------------------------------
|
-------------------------------
|
||||||
|
|
||||||
- You may find the following script useful for compiling wxX11,
|
- You may find the following script useful for compiling wxX11,
|
||||||
@@ -401,25 +404,23 @@ and configure before you can type make.
|
|||||||
permissions). Make this script executable with the command
|
permissions). Make this script executable with the command
|
||||||
chmod a+x makewxx11.
|
chmod a+x makewxx11.
|
||||||
|
|
||||||
-------:x-----Cut here-----:x-----
|
# makewxx11
|
||||||
# makewxx11
|
# Sets permissions (in case we extracted wxX11 from zip files)
|
||||||
# Sets permissions (in case we extracted wxX11 from zip files)
|
# and makes wxX11.
|
||||||
# and makes wxX11.
|
# Call from top-level wxWidgets directory.
|
||||||
# Call from top-level wxWidgets directory.
|
# Note that this uses standard (but commonly-used) configure options;
|
||||||
# Note that this uses standard (but commonly-used) configure options;
|
# if you're feeling brave, you may wish to compile with threads:
|
||||||
# if you're feeling brave, you may wish to compile with threads:
|
# if they're not supported by the target platform, they will be disabled
|
||||||
# if they're not supported by the target platform, they will be disabled
|
# anyhow
|
||||||
# anyhow
|
# -- Julian Smart
|
||||||
# -- Julian Smart
|
chmod a+x configure config.sub config.guess
|
||||||
chmod a+x configure config.sub config.guess
|
./configure --with-x11 --with-shared --with-debug_flag --with-debug_info --enable-debug --without-threads --without-sockets --without-odbc
|
||||||
./configure --with-x11 --with-shared --with-debug_flag --with-debug_info --enable-debug --without-threads --without-sockets --without-odbc
|
make
|
||||||
make
|
|
||||||
-------:x-----Cut here-----:x-----
|
|
||||||
|
|
||||||
This script will build wxX11 using shared libraries. If you want to build
|
This script will build wxX11 using shared libraries. If you want to build
|
||||||
a static wxWidgets library, use --disable-shared.
|
a static wxWidgets library, use --disable-shared.
|
||||||
|
|
||||||
Troubleshooting
|
Troubleshooting {#x11_troubleshooting}
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
- Solaris compilation with gcc: if the compiler has problems with the variable
|
- Solaris compilation with gcc: if the compiler has problems with the variable
|
||||||
@@ -437,7 +438,7 @@ Troubleshooting
|
|||||||
If you find any incorrect instances, though, such as a
|
If you find any incorrect instances, though, such as a
|
||||||
missing 'const' in an overridden function, please let us know.
|
missing 'const' in an overridden function, please let us know.
|
||||||
|
|
||||||
Other Notes
|
Other Notes {#x11_misc_notes}
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
- Debugging mode is switched on by default in the makefiles, but using
|
- Debugging mode is switched on by default in the makefiles, but using
|
||||||
@@ -448,11 +449,3 @@ Other Notes
|
|||||||
configure system, change --with-debug_flag to --without-debug_flag
|
configure system, change --with-debug_flag to --without-debug_flag
|
||||||
and --with-debug_info to --without-debug_info in the makewxx11
|
and --with-debug_info to --without-debug_info in the makewxx11
|
||||||
script).
|
script).
|
||||||
|
|
||||||
Bug reports
|
|
||||||
-----------
|
|
||||||
|
|
||||||
Please send bug reports with a description of your environment,
|
|
||||||
compiler and the error message(s) to the developers mailing list at:
|
|
||||||
|
|
||||||
https://www.wxwidgets.org/support/mailing-lists/
|
|
Reference in New Issue
Block a user