source: BOOK/cross-tools/common/pkg-config-lite.xml @ 39612b5

clfs-3.0.0-systemdsystemd
Last change on this file since 39612b5 was 39612b5, checked in by William Harrington <kb0iic@…>, 10 years ago

Add --host={CLFS_TARGET} during Cross tools pkg-config configure so that the <host-triplet>-pkg-config file installed to /cross-tools/bin is named properly for when cross-compiling in temp-system. Make and Util-Linux, for example, will look for <triplet>-pkg-config based on the running host (x86_64, etc) and will look for x86_64-pkg-config on the host rather than use /cross-tools/bin/pkg-config or /cross-tools/bin/{CLFS_TARGET}-pkg-config. This will fix that.

  • Property mode set to 100644
File size: 2.8 KB
RevLine 
[f319d64]1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4  <!ENTITY % general-entities SYSTEM "../../general.ent">
5  %general-entities;
6]>
7
8<sect1 id="ch-cross-tools-pkg-config-lite" role="wrap">
9  <?dbhtml filename="pkg-config-lite.html"?>
10
11  <title>Pkg-config-lite-&pkg-config-lite-version;</title>
12
13  <indexterm zone="ch-cross-tools-pkg-config-lite">
14    <primary sortas="a-Pkg-config-lite">Pkg-config-lite</primary>
15    <secondary>cross tools</secondary>
16  </indexterm>
17
18  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
19  href="../../final-system/common/pkg-config-lite.xml"
20  xpointer="xpointer(//*[@role='package'])"/>
21
22  <sect2 role="installation">
23    <title>Installation of Pkg-config-lite</title>
24
25    <para os="a">Several packages in the temporary system will use
26    <command>pkg-config</command> to find various required and optional
[87d6725]27    dependencies. Unfortunately, this could result in those packages
[f319d64]28    finding libraries on the host system and trying to link against them,
29    which will not work. To avoid this problem, we will install
30    a <command>pkg-config</command> binary in
31    <filename class="directory">/cross-tools</filename> and configure it so
32    that it will look for Pkg-config files only in
33    <filename class="directory">/tools</filename>.</para>
34
35    <para os="b">Prepare Pkg-config-lite for compilation:</para>
36
[39612b5]37<screen os="c"><userinput>./configure --prefix=/cross-tools --host=${CLFS_TARGET}\
[f319d64]38    --with-pc-path=/tools/lib/pkgconfig:/tools/share/pkgconfig</userinput></screen>
39
40    <variablelist os="d">
41      <title>The meaning of the new configure option:</title>
42
43      <varlistentry>
44        <term><parameter>--with-pc-path</parameter></term>
45        <listitem>
46          <para>This sets the default PKG_CONFIG_PATH to
47          <filename class="directory">/tools/lib/pkgconfig</filename> and
48          <filename class="directory">/tools/share/pkgconfig</filename>.</para>
49        </listitem>
50      </varlistentry>
51
[39612b5]52      <varlistentry>
53        <term><parameter>--host=${CLFS_TARGET}</parameter></term>
54        <listitem>
55          <para>This option makes sure the installation includes the proper
56          <command>{$CLFS_TARGET}-pkg-config</command> to be detected and used
57          when cross-compiling some tools in the temporary system and boot
58          chapter.</para> 
59        </listitem>
60      </varlistentry>
61
[f319d64]62    </variablelist>
63
64    <para os="e">Compile the package:</para>
65
66<screen os="f"><userinput>make</userinput></screen>
67
68    <para os="g">Install the package:</para>
69
70<screen os="h"><userinput>make install</userinput></screen>
71
72  </sect2>
73
74  <sect2 role="content">
75    <title/>
76
77    <para>Details on this package are located in <xref
78    linkend="contents-pkg-config-lite" role="."/></para>
79
80  </sect2>
81
82</sect1>
Note: See TracBrowser for help on using the repository browser.