mirror of
https://github.com/fltk/fltk.git
synced 2025-12-13 23:55:38 +08:00
Improve documentation about library build folders and more
lib/README.txt: clarify where built libraries are located documentation/src/basics.dox: clarify (C++) compiler command usage and improve documentation of the fltk-config script
This commit is contained in:
@@ -260,15 +260,14 @@ include lines:</i>
|
|||||||
|
|
||||||
\section basics_compiling Compiling Programs that Use FLTK
|
\section basics_compiling Compiling Programs that Use FLTK
|
||||||
|
|
||||||
This section needs a major rework. Since FLTK 1.4 CMake is the recommended build
|
Since FLTK 1.4 CMake is the recommended build system. The details below show
|
||||||
system. The details below show the "old" methods and reference information
|
the "old" methods and reference information in case you like to write your
|
||||||
in case you like to write your build configuration manually (e.g. Makefiles,
|
build configuration manually (e.g. Makefiles, Visual Studio, other IDE's ...).
|
||||||
Visual Studio, or other IDE's etc.).
|
|
||||||
|
|
||||||
CMake can simplify this task substantially. For now, refer to README.CMake.txt
|
CMake can simplify this task substantially. For now, refer to README.CMake.txt
|
||||||
for further information.
|
for further information.
|
||||||
|
|
||||||
\todo Add a chapter "Building FLTK with CMake" or similar.
|
\todo This section needs a major rework. Add a chapter "Building FLTK with CMake".
|
||||||
|
|
||||||
|
|
||||||
\subsection basics_standard_compiler Compiling Programs with Standard Compilers
|
\subsection basics_standard_compiler Compiling Programs with Standard Compilers
|
||||||
@@ -278,23 +277,35 @@ tools) you will probably need to tell the compiler where to find the
|
|||||||
header files. This is usually done using the \p -I option:
|
header files. This is usually done using the \p -I option:
|
||||||
|
|
||||||
\code
|
\code
|
||||||
CC -I/usr/local/include ...
|
c++ -I/usr/local/include ...
|
||||||
gcc -I/usr/local/include ...
|
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
The \p fltk-config script included with FLTK can be
|
\note You need a C++ compiler to build FLTK. The commands given in this
|
||||||
used to get the options that are required by your compiler:
|
chapter are \b examples using \p 'c++'. Please replace this command with
|
||||||
|
the C++ compiler suitable for your system or use the `fltk-config` script
|
||||||
|
as described below (this is recommended).
|
||||||
|
|
||||||
|
The \p fltk-config script included with FLTK can be used to get the compiler
|
||||||
|
and the options that are required by your compiler:
|
||||||
|
|
||||||
\code
|
\code
|
||||||
CC `fltk-config --cxxflags` ...
|
fltk-config --cc
|
||||||
|
fltk-config --cxx
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
|
return the C and C++ compiler commands used to build FLTK.
|
||||||
|
|
||||||
|
\code
|
||||||
|
c++ `fltk-config --cxxflags` ...
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
can be used to include the required compiler flags in the command line.
|
||||||
|
|
||||||
Similarly, when linking your application you will need to tell the
|
Similarly, when linking your application you will need to tell the
|
||||||
compiler to use the FLTK library:
|
compiler to use the FLTK library:
|
||||||
|
|
||||||
\code
|
\code
|
||||||
CC ... -L/usr/local/lib -lfltk -lXext -lX11 -lm -ldl
|
c++ ... -L/usr/local/lib -lfltk -lXext -lX11 ... -lm -ldl
|
||||||
gcc ... -L/usr/local/lib -lfltk -lXext -lX11 -lm -ldl
|
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
Aside from the "fltk" library, there are also the following libraries
|
Aside from the "fltk" library, there are also the following libraries
|
||||||
@@ -304,8 +315,8 @@ Aside from the "fltk" library, there are also the following libraries
|
|||||||
- "fltk_cairo" for optional integrated Cairo support.
|
- "fltk_cairo" for optional integrated Cairo support.
|
||||||
|
|
||||||
\note
|
\note
|
||||||
The separate library \p fltk_cairo will likely be removed in FLTK 1.4.0;
|
The separate \p fltk_cairo library will likely be removed in FLTK 1.4.0
|
||||||
this is work in progress.
|
(this is work in progress).
|
||||||
|
|
||||||
\note
|
\note
|
||||||
The libraries are named "fltk.lib", "fltk_gl.lib", "fltk_forms.lib", "fltk_images.lib",
|
The libraries are named "fltk.lib", "fltk_gl.lib", "fltk_forms.lib", "fltk_images.lib",
|
||||||
@@ -315,7 +326,7 @@ As before, the \p fltk-config script included with FLTK can be
|
|||||||
used to get the options that are required by your linker:
|
used to get the options that are required by your linker:
|
||||||
|
|
||||||
\code
|
\code
|
||||||
CC ... `fltk-config --ldflags`
|
c++ ... `fltk-config --ldflags`
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
<!-- NEED 2in -->
|
<!-- NEED 2in -->
|
||||||
@@ -324,11 +335,11 @@ The forms, GL, and images libraries are included with the "--use-foo"
|
|||||||
options, as follows:
|
options, as follows:
|
||||||
|
|
||||||
\code
|
\code
|
||||||
CC ... `fltk-config --use-forms --ldflags`
|
c++ ... `fltk-config --use-forms --ldflags`
|
||||||
CC ... `fltk-config --use-gl --ldflags`
|
c++ ... `fltk-config --use-gl --ldflags`
|
||||||
CC ... `fltk-config --use-images --ldflags`
|
c++ ... `fltk-config --use-images --ldflags`
|
||||||
CC ... `fltk-config --use-forms --use-gl --use-images --ldflags`
|
c++ ... `fltk-config --use-forms --use-gl --use-images --ldflags`
|
||||||
CC ... `fltk-config --use-cairo --ldflags`
|
c++ ... `fltk-config --use-cairo --ldflags`
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
Finally, you can use the \p fltk-config script to
|
Finally, you can use the \p fltk-config script to
|
||||||
@@ -347,7 +358,14 @@ Any of these will create an executable named \p filename (or \p filename.exe
|
|||||||
under Windows).
|
under Windows).
|
||||||
|
|
||||||
\note <kbd>'fltk-config \-\-compile'</kbd> accepts only a limited set of file
|
\note <kbd>'fltk-config \-\-compile'</kbd> accepts only a limited set of file
|
||||||
extensions for C++ source files: \p '.cpp', \p '.cxx', \p '.cc', and \p '.C' .
|
extensions for C++ source files: \p '.cpp', \p '.cxx', \p '.cc', and \p '.C'
|
||||||
|
(capital 'C').
|
||||||
|
|
||||||
|
\code
|
||||||
|
fltk-config --help
|
||||||
|
\endcode
|
||||||
|
|
||||||
|
displays all available options.
|
||||||
|
|
||||||
\subsection basics_makefile Compiling Programs with Makefiles
|
\subsection basics_makefile Compiling Programs with Makefiles
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +1,27 @@
|
|||||||
README.lib
|
lib/README.txt
|
||||||
----------
|
--------------
|
||||||
|
|
||||||
This README file is a placeholder for library files on your
|
This README file is a placeholder for FLTK library files on your system
|
||||||
system.
|
if FLTK is built using 'configure' and 'make'.
|
||||||
|
|
||||||
Under Microsoft Windows a successful build of all projects and
|
|
||||||
configurations will contain debug and release libraries for you
|
|
||||||
to link to - all are built using the multi-threaded DLL
|
|
||||||
settings. The DLL files (fltkdll.dll and fltkdlld.dll) required
|
|
||||||
for a complete DLL-based binary distribution are located in the
|
|
||||||
"visualc" directory.
|
|
||||||
|
|
||||||
Under UNIX a single set of library files will be built, with or
|
Building FLTK with CMake
|
||||||
without debug information depending on the options you provided
|
|
||||||
to the configure script.
|
If FLTK is built using CMake all static and shared libraries are created
|
||||||
|
in the 'lib' subdirectory of the build tree. We strongly recommend to
|
||||||
|
build with CMake outside the source tree ("out-of-tree") as described
|
||||||
|
in README.CMake.txt in the root folder of the FLTK distribution.
|
||||||
|
|
||||||
|
If FLTK is built out-of-tree as recommende this folder will not be touched.
|
||||||
|
|
||||||
|
|
||||||
|
Building FLTK with configure + make
|
||||||
|
|
||||||
|
Under UNIX/Linux and other systems that support 'configure' and 'make'
|
||||||
|
(e.g. MinGW, MSYS) a single set of library files will be built, with
|
||||||
|
or without debug information depending on the options you provided to
|
||||||
|
the configure script.
|
||||||
|
|
||||||
|
The FLTK build system based on configure does not support out-of-tree
|
||||||
|
builds, hence the static libraries will be built in this 'lib' folder
|
||||||
|
and the shared libraries (if enabled) can be found in the 'src' folder.
|
||||||
|
|||||||
Reference in New Issue
Block a user