h2ph
СОДЕРЖАНИЕ
ИМЯ
h2ph - преобразовать файлы заголовков C .h в файлы заголовков Perl .ph
СИНТАКСИС
h2ph [-d каталог назначения] [-r | -a] [-l] [-h] [-e] [-D] [-Q] [файлы заголовков]
ОПИСАНИЕ
h2ph преобразует указанные файлы заголовков C в соответствующий формат файлов заголовков Perl. Его проще всего запустить в каталоге /usr/include:
cd /usr/include; h2ph * sys/* или
cd /usr/include; h2ph * sys/* arpa/* netinet/* или
cd /usr/include; h2ph -r -l . Выходные файлы размещаются в иерархии, корнем которой является архитектурно-зависимый каталог библиотек Perl. Вы можете указать другую иерархию с помощью переключателя -d.
Если запустить без аргументов, он фильтрует стандартный ввод в стандартный вывод.
ПАРАМЕТРЫ
- -d каталог_назначения
-
Разместить полученные файлы .ph в каталоге каталог_назначения вместо стандартного расположения библиотек Perl (
$Config{'installsitearch'}). - -r
-
Рекурсивный режим; если какой-либо из файлов_заголовков является каталогом, то h2ph запускается для всех файлов в этих каталогах (и их подкаталогах и т. д.). -r и -a взаимоисключающие.
- -a
-
Автоматический режим; преобразовать файлы_заголовков, а также любые файлы .h, которые они включают. Этот параметр будет искать файлы .h во всех каталогах, которые обычно использует ваша С-компилятор. -a и -r взаимоисключающие.
- -l
-
Символические ссылки будут дублироваться в каталоге назначения. Если -l не указан, ссылки пропускаются.
- -h
-
В файлы .ph будут добавлены «подсказки», которые помогут в поиске проблем с h2ph. В тех случаях, когда вам необходимо require файл .ph, содержащий синтаксические ошибки, вместо криптических
[ some error condition ] at (eval mmm) line nnnвы увидите немного более полезное сообщение
[ some error condition ] at filename.ph line nnnОднако файлы .ph почти удваивают свой размер при создании с помощью -h.
- -e
-
В случае возникновения ошибки во время преобразования, выходной файл будет удалён, и вместо немедленного завершения преобразования будет выдано предупреждение.
- -D
-
Включить код из файла .h в виде комментария в файл .ph. Это используется в основном для отладки h2ph.
- -Q
-
Режим «Без вывода»; не выводить имена преобразуемых файлов.
ОКРУЖЕНИЕ
Переменные среды не используются.
ФАЙЛЫ
/usr/include/*.h
/usr/include/sys/*.h и т. д.
АВТОР
Ларри Уолл
СМОТРИТЕ ТАКЖЕ
perl(1)
ДИАГНОСТИКА
Обычные предупреждения, если не удается прочитать или записать участвующие файлы.
ОШИБКИ
Не создаёт массив %sizeof для вас.
Не обрабатывает все конструкции C, но пытается изолировать определения внутри evals, чтобы вы могли получить определения, которые он может преобразовать.
Предназначен только как грубый инструмент. Возможно, вам потребуется подкорректировать полученные файлы.
Вам нужно запустить эту программу вручную; она не запускается как часть установки Perl.
Не обрабатывает сложные выражения, построенные по частям, например:
enum {
FIRST_VALUE,
SECOND_VALUE,
#ifdef ABC
THIRD_VALUE
#endif
}; Не обязательно находит все внутренне определённые символы вашей С-компилятора.
© 1993–2020 Larry Wall and others
Licensed under the GNU General Public License version 1 or later, or the Artistic License.
The Perl logo is a trademark of the Perl Foundation.
https://perldoc.perl.org/5.32.0/h2ph