mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-25 15:06:14 +01:00
docs: Reformat INSTALL.md as Markdown
This improves the formatting, but doesn’t touch the content of the file, some of which is quite out of date. I’ll approach rewriting the file in a later commit/MR. Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
This commit is contained in:
parent
b92708503d
commit
8a30ce926b
57
INSTALL.md
57
INSTALL.md
@ -1,13 +1,16 @@
|
|||||||
Simple install procedure
|
Simple install procedure
|
||||||
========================
|
========================
|
||||||
|
|
||||||
% tar xf glib-*.tar.gz # unpack the sources
|
```sh
|
||||||
% cd glib-* # change to the toplevel directory
|
tar xf glib-*.tar.gz # unpack the sources
|
||||||
% meson _build # configure the build
|
cd glib-* # change to the toplevel directory
|
||||||
% ninja -C _build # build GLib
|
meson _build # configure the build
|
||||||
|
ninja -C _build # build GLib
|
||||||
|
|
||||||
[ Become root if necessary ]
|
# Become root if necessary
|
||||||
% ninja -C _build install # install GLib
|
|
||||||
|
ninja -C _build install # install GLib
|
||||||
|
```
|
||||||
|
|
||||||
Requirements
|
Requirements
|
||||||
============
|
============
|
||||||
@ -17,7 +20,7 @@ compiler and libc. On UNIX-like systems, it also assumes compliance
|
|||||||
with at least the original 1990 version of POSIX.
|
with at least the original 1990 version of POSIX.
|
||||||
|
|
||||||
GLib-2.0 requires pkg-config, which is tool for tracking the
|
GLib-2.0 requires pkg-config, which is tool for tracking the
|
||||||
compilation flags needed for libraries. (For each library, a small .pc
|
compilation flags needed for libraries. (For each library, a small `.pc`
|
||||||
text file is installed in a standard location that contains the
|
text file is installed in a standard location that contains the
|
||||||
compilation flags needed for that library along with version number
|
compilation flags needed for that library along with version number
|
||||||
information.) Information about pkg-config can be found at:
|
information.) Information about pkg-config can be found at:
|
||||||
@ -29,28 +32,28 @@ package a new enough version of Meson, it can be [installed using
|
|||||||
`pip`](https://mesonbuild.com/Getting-meson.html#installing-meson-with-pip).
|
`pip`](https://mesonbuild.com/Getting-meson.html#installing-meson-with-pip).
|
||||||
|
|
||||||
In order to implement conversions between character sets,
|
In order to implement conversions between character sets,
|
||||||
GLib requires an implementation of the standard iconv() routine.
|
GLib requires an implementation of the standard `iconv()` routine.
|
||||||
Most modern systems will have a suitable implementation, however
|
Most modern systems will have a suitable implementation, however
|
||||||
many older systems lack an iconv() implementation. On such systems,
|
many older systems lack an `iconv()` implementation. On such systems,
|
||||||
you must install the libiconv library. This can be found at:
|
you must install the libiconv library. This can be found at:
|
||||||
|
|
||||||
http://www.gnu.org/software/libiconv/
|
http://www.gnu.org/software/libiconv/
|
||||||
|
|
||||||
If your system has an iconv implementation but you want to use
|
If your system has an iconv implementation but you want to use
|
||||||
libiconv instead, you can pass the --with-libiconv option to
|
libiconv instead, you can pass the `--with-libiconv` option to
|
||||||
configure. This forces libiconv to be used.
|
configure. This forces libiconv to be used.
|
||||||
|
|
||||||
Note that if you have libiconv installed in your default include
|
Note that if you have libiconv installed in your default include
|
||||||
search path (for instance, in /usr/local/), but don't enable
|
search path (for instance, in `/usr/local/`), but don't enable
|
||||||
it, you will get an error while compiling GLib because the
|
it, you will get an error while compiling GLib because the
|
||||||
iconv.h that libiconv installs hides the system iconv.
|
`iconv.h` that libiconv installs hides the system iconv.
|
||||||
|
|
||||||
If you are using the native iconv implementation on Solaris
|
If you are using the native iconv implementation on Solaris
|
||||||
instead of libiconv, you'll need to make sure that you have
|
instead of libiconv, you'll need to make sure that you have
|
||||||
the converters between locale encodings and UTF-8 installed.
|
the converters between locale encodings and UTF-8 installed.
|
||||||
At a minimum you'll need the SUNWuiu8 package. You probably
|
At a minimum you'll need the `SUNWuiu8` package. You probably
|
||||||
should also install the SUNWciu8, SUNWhiu8, SUNWjiu8, and
|
should also install the `SUNWciu8`, `SUNWhiu8`, `SUNWjiu8`, and
|
||||||
SUNWkiu8 packages.
|
`SUNWkiu8` packages.
|
||||||
|
|
||||||
The native iconv on Compaq Tru64 doesn't contain support for
|
The native iconv on Compaq Tru64 doesn't contain support for
|
||||||
UTF-8, so you'll need to use GNU libiconv instead. (When
|
UTF-8, so you'll need to use GNU libiconv instead. (When
|
||||||
@ -59,7 +62,7 @@ for GNU gettext as well.) This probably applies to related
|
|||||||
operating systems as well.
|
operating systems as well.
|
||||||
|
|
||||||
Finally, for message catalog handling, GLib requires an implementation
|
Finally, for message catalog handling, GLib requires an implementation
|
||||||
of gettext(). If your system doesn't provide this functionality,
|
of `gettext()`. If your system doesn't provide this functionality,
|
||||||
you should use the libintl library from the GNU gettext package,
|
you should use the libintl library from the GNU gettext package,
|
||||||
available from:
|
available from:
|
||||||
|
|
||||||
@ -69,7 +72,7 @@ Support for extended attributes and SELinux in GIO requires
|
|||||||
libattr and libselinux.
|
libattr and libselinux.
|
||||||
|
|
||||||
Some of the mimetype-related functionality in GIO requires the
|
Some of the mimetype-related functionality in GIO requires the
|
||||||
update-mime-database and update-desktop-database utilities, which
|
`update-mime-database` and `update-desktop-database` utilities, which
|
||||||
are part of shared-mime-info and desktop-file-utils, respectively.
|
are part of shared-mime-info and desktop-file-utils, respectively.
|
||||||
|
|
||||||
GObject uses libffi to implement generic marshalling functionality.
|
GObject uses libffi to implement generic marshalling functionality.
|
||||||
@ -90,25 +93,25 @@ Or online at:
|
|||||||
Installation directories
|
Installation directories
|
||||||
========================
|
========================
|
||||||
|
|
||||||
The location of the installed files is determined by the --prefix
|
The location of the installed files is determined by the `--prefix`
|
||||||
and --exec-prefix options given to configure. There are also more
|
and `--exec-prefix` options given to configure. There are also more
|
||||||
detailed flags to control individual directories. However, the
|
detailed flags to control individual directories. However, the
|
||||||
use of these flags is not tested.
|
use of these flags is not tested.
|
||||||
|
|
||||||
One particular detail to note, is that the architecture-dependent
|
One particular detail to note, is that the architecture-dependent
|
||||||
include file glibconfig.h is installed in:
|
include file `glibconfig.h` is installed in `$libdir/glib-2.0/include/`.
|
||||||
|
|
||||||
$libdir/glib-2.0/include/
|
`.pc` files for the various libraries are installed in
|
||||||
|
`$libdir/pkgconfig` to provide information when compiling
|
||||||
.pc files for the various libraries are installed in
|
other packages that depend on GLib. If you set `PKG_CONFIG_PATH`
|
||||||
$libdir/pkgconfig to provide information when compiling
|
|
||||||
other packages that depend on GLib. If you set PKG_CONFIG_PATH
|
|
||||||
so that it points to this directory, then you can get the
|
so that it points to this directory, then you can get the
|
||||||
correct include flags and library flags for compiling a GLib
|
correct include flags and library flags for compiling a GLib
|
||||||
application with:
|
application with:
|
||||||
|
|
||||||
pkg-config --cflags glib-2.0
|
```sh
|
||||||
pkg-config --libs glib-2.0
|
pkg-config --cflags glib-2.0
|
||||||
|
pkg-config --libs glib-2.0
|
||||||
|
```
|
||||||
|
|
||||||
This is the only supported way of determining the include and library flags
|
This is the only supported way of determining the include and library flags
|
||||||
for building against GLib.
|
for building against GLib.
|
||||||
|
Loading…
Reference in New Issue
Block a user