summaryrefslogtreecommitdiff
path: root/lfs-12.0-sysv/chapter08/libffi.html
diff options
context:
space:
mode:
Diffstat (limited to 'lfs-12.0-sysv/chapter08/libffi.html')
-rw-r--r--lfs-12.0-sysv/chapter08/libffi.html211
1 files changed, 0 insertions, 211 deletions
diff --git a/lfs-12.0-sysv/chapter08/libffi.html b/lfs-12.0-sysv/chapter08/libffi.html
deleted file mode 100644
index 4115958..0000000
--- a/lfs-12.0-sysv/chapter08/libffi.html
+++ /dev/null
@@ -1,211 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
- <title>
- 8.50. Libffi-3.4.4
- </title>
- <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
- <meta name="generator" content="DocBook XSL Stylesheets V1.79.1" />
- <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
- "text/css" media="print" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- </head>
- <body class="lfs" id="lfs-12.0">
- <div class="navheader">
- <h4>
- Линукс с нуля - Версия 12.0
- </h4>
- <h3>
- Глава 8. Установка базового системного программного обеспечения
- </h3>
- <ul>
- <li class="prev">
- <a accesskey="p" href="libelf.html" title=
- "Libelf из Elfutils-0.189">Пред.</a>
- <p>
- Libelf из Elfutils-0.189
- </p>
- </li>
- <li class="next">
- <a accesskey="n" href="Python.html" title="Python-3.11.4">След.</a>
- <p>
- Python-3.11.4
- </p>
- </li>
- <li class="up">
- <a accesskey="u" href="chapter08.html" title=
- "Глава 8. Установка базового системного программного обеспечения">Наверх</a>
- </li>
- <li class="home">
- <a accesskey="h" href="../index.html" title=
- "Линукс с нуля - Версия 12.0">Начало</a>
- </li>
- </ul>
- </div>
- <div class="wrap" lang="en" xml:lang="en">
- <h1 class="sect1">
- <a id="ch-system-libffi" name="ch-system-libffi"></a>8.50.
- Libffi-3.4.4
- </h1>
- <div class="package" lang="en" xml:lang="en">
- <p>
- Библиотека Libffi предоставляет переносимый высокоуровневый
- программный интерфейс для различных соглашений о вызовах. Это
- позволяет программисту вызывать любую функцию, указанную в описании
- интерфейса вызова во время выполнения.
- </p>
- <p>
- FFI расшифровывается как интерфейс внешних функций. FFI позволяет
- программе, написанной на одном языке, вызывать программу,
- написанную на другом языке. В частности, Libffi может обеспечить
- связь между интерпретатором, таким как Perl или Python, и
- подпрограммами общей библиотеки, написанными на C или C++.
- </p>
- <div class="segmentedlist">
- <div class="seglistitem">
- <div class="seg">
- <strong class="segtitle">Приблизительное время сборки:</strong>
- <span class="segbody">1.8 SBU</span>
- </div>
- <div class="seg">
- <strong class="segtitle">Требуемое дисковое
- пространство:</strong> <span class="segbody">11 MB</span>
- </div>
- </div>
- </div>
- </div>
- <div class="installation" lang="en" xml:lang="en">
- <h2 class="sect2">
- 8.50.1. Установка пакета Libffi
- </h2>
- <div class="admon note">
- <img alt="[Примечание]" src="../images/note.png" />
- <h3>
- Примечание
- </h3>
- <p>
- Как и GMP, Libffi собирается с учетом оптимизаций, специфичных
- для используемого процессора. При сборке для другой системы
- измените значение параметра <em class=
- "parameter"><code>--with-gcc-arch=</code></em> в следующей
- команде на имя архитектуры, полностью реализованной процессором в
- этой системе. Если этого не сделать, все приложения, ссылающиеся
- на <code class="filename">libffi</code>, будут вызывать ошибку
- <span class="quote">«<span class="quote">Illegal Operation -
- недопустимая операция</span>»</span>.
- </p>
- </div>
- <p>
- Подготовьте Libffi к компиляции:
- </p>
- <pre class="userinput"><kbd class=
- "command">./configure --prefix=/usr \
- --disable-static \
- --with-gcc-arch=native</kbd></pre>
- <div class="variablelist">
- <p class="title">
- <strong>Значение параметров configure:</strong>
- </p>
- <dl class="variablelist">
- <dt>
- <span class="term"><em class=
- "parameter"><code>--with-gcc-arch=native</code></em></span>
- </dt>
- <dd>
- <p>
- Убедитесь, что GCC оптимизируется для текущей системы. Если
- значение не указано, то архитектура системы угадывается и
- сгенерированный код может быть неправильным. Если
- сгенерированный код будет скопирован из родной системы в
- менее мощную, используйте архитектуру менее мощной системы в
- качестве параметра. Дополнительные сведения об альтернативных
- типах систем смотрите в <a class="ulink" href=
- "https://gcc.gnu.org/onlinedocs/gcc-13.2.0/gcc/x86-Options.html">
- описании параметров x86 в руководстве GCC</a>.
- </p>
- </dd>
- </dl>
- </div>
- <p>
- Скомпилируйте пакет:
- </p>
- <pre class="userinput"><kbd class="command">make</kbd></pre>
- <p>
- Чтобы протестировать пакет, выполните:
- </p>
- <pre class="userinput"><kbd class="command">make check</kbd></pre>
- <p>
- Установите пакет:
- </p>
- <pre class="userinput"><kbd class="command">make install</kbd></pre>
- </div>
- <div class="content" lang="en" xml:lang="en">
- <h2 class="sect2">
- <a id="contents-libffi" name="contents-libffi"></a>8.50.2.
- Содержимое пакета Libffi
- </h2>
- <div class="segmentedlist">
- <div class="seglistitem">
- <div class="seg">
- <strong class="segtitle">Установленные библиотеки:</strong>
- <span class="segbody">libffi.so</span>
- </div>
- </div>
- </div>
- <div class="variablelist">
- <h3>
- Краткое описание
- </h3>
- <table border="0" class="variablelist">
- <colgroup>
- <col align="left" valign="top" />
- <col />
- </colgroup>
- <tbody>
- <tr>
- <td>
- <p>
- <a id="libffi" name="libffi"></a><span class=
- "term"><code class="filename">libffi</code></span>
- </p>
- </td>
- <td>
- <p>
- Содержит внешний интерфейс для API-функций
- </p>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- </div>
- </div>
- <div class="navfooter">
- <ul>
- <li class="prev">
- <a accesskey="p" href="libelf.html" title=
- "Libelf из Elfutils-0.189">Пред.</a>
- <p>
- Libelf из Elfutils-0.189
- </p>
- </li>
- <li class="next">
- <a accesskey="n" href="Python.html" title="Python-3.11.4">След.</a>
- <p>
- Python-3.11.4
- </p>
- </li>
- <li class="up">
- <a accesskey="u" href="chapter08.html" title=
- "Глава 8. Установка базового системного программного обеспечения">Наверх</a>
- </li>
- <li class="home">
- <a accesskey="h" href="../index.html" title=
- "Линукс с нуля - Версия 12.0">Начало</a>
- </li>
- </ul>
- </div>
- </body>
-</html>