![]() |
![]() ![]() |
HP-UXHP-UX поддерживает динамически загружаемых библиотек (разделяемые библиотеки). Подключаемые библиотеки конец с суффиксом. СЛ. Общие библиотеки создана на платформе с использованием частности PA-RISC версия не используемые на платформах с использованием ранее PA-RISC версии по умолчанию. Тем не менее, это обратная совместимость может быть разрешен с помощью той же DAportable + компилятор флаг (с тем же PA-RISC 1.0 предостережение упоминалось выше).
Для создания общей библиотеки, следующие шаги должны быть выполнены: (Заметим, что эти меры, как правило, обрабатываются автоматически с расширением в Makefile). Если эти зависимых библиотек, не перечисленных в создании разделяемой библиотеки, вы получите смертельным `` Неразрешенные символ''ошибки во время выполнения, когда библиотека загружена. Вы можете создать общую библиотеку, в которой ссылается на другую библиотеку, которая может быть либо архив библиотеки или разделяемой библиотеки. Если этот второй библиотека является общей библиотеки, это называется `` зависит библиотеку''. Зависимый библиотеке имя регистрируется в основном общие библиотеки, но это не связаны в общую библиотеку. Вместо этого, он будет загружен, когда главная библиотека загружена. Это может вызвать проблемы, если вы строите продление на одну систему, и переместить его в другую систему, где библиотеки не могут быть расположены в одном и том же месте, что и на первой системе. Если указанные библиотеки архив библиотеки, то она рассматривается как простой сбор. O модулей (каждый из которых должен содержать ПОС). Эти модули являются затем объединены в общую библиотеку. Заметим, что это нормально для создания библиотеки, которая содержит на иждивении библиотеке, которая уже связана в Perl. Это не представляется возможным увязать PA-RISC 1.0 разделяемые библиотеки. В HP ANSI C Компилятор При использовании этого компилятора для создания Perl, вы должны убедиться в том, что флаг-AA добавляется в cpprun и cppstdin переменных в config.sh файл (хотя см. раздел, посвященный 64-битных Perl ниже). Использование больших файлов с Perl Начиная с HP-UX версии 10.20, файлы размером более 2GB (2 ^ 31 байт), могут быть созданы и манипулировали. Три отдельные методы для этого имеются. Среди этих методов, наилучшим способом для Perl состоит в том, чтобы собрать с помощью флага-Duselargefiles настроить. Это приводит к Perl быть составлен с использованием структуры и функций, в которых эти 64 бита мире, а не 32 бит шириной. (Заметим, что это будет работать только с HP в ANSI C компилятор. Если вы хотите скомпилировать Perl с использованием GCC, вам придется получить версию компилятора, которые поддерживают 64-битные операции.)
Есть некоторые недостатки такого подхода. Одна заключается в том, что любое расширение которых требует какой-либо файл-манипулирования C функция будет необходимо перекомпилировать (просто следовать обычной `` Perl Makefile.PL; делать; делать тест; сделать процедуру установки'').
Он настоятельно рекомендовал использовать этот флаг, если вы запустите конфигурирование. Если вы не сделаете этого, но потом ответить на вопрос о больших файлов при настройках спросит вас, вы можете получить конфигурацию, которая не может быть составлен, или что не работает, как ожидалось. Нитевидный Perl Можно составить версия резьбовых Perl на любую версию HP-UX до 10.30, но он решительно предлагает вам быть запущен на HP-UX 11.00, по крайней мере. Для компиляции Perl с резьбой, надстройка Dusethreads к аргументам Настроить. Убедитесь, что-D_POSIX_C_SOURCE = 199506L компилятор флаг автоматически добавляются в список флагов. Кроме того, убедитесь, что-lpthread указан перед-LC в список библиотек на ссылку с Perl. По состоянию на дату настоящего документа, Perl нитей не полностью поддерживается в HP-UX. HP-UX версии 10.30 до требуют отдельного создание POSIX нитей библиотеки пакета. Двумя примерами являются HP DCE пакет, доступный по `` HP-UX 3.0 Расширения оборудования, установка и основной ОС, релиз 10.20, апрель 1999 года (B3920-13941)''или свободно PTH пакет, доступный во всем мире, хотя HP-UX зеркала из скомпилированных пакетов 64-разрядные Perl Начиная с HP-UX 11.00, программы составлены в соответствии с HP-UX может воспользоваться тем LP64 среды программирования (LP64 средствами стремится и Анонсы 64 бит шириной). Работа осуществляется на Perl, чтобы ее 64-разрядной совместимо все версии Unix. После того, как это полная, скалярные переменные будут иметь возможность провести чисел больше, чем 2 ^ 32 с полной точностью. По состоянию на дату настоящего документа, Perl не является 64-разрядной совместимо на HP-UX. Если пользователь хотел поэкспериментировать с компиляцией Perl в LP64 среды, использование флага-Duse64bitall настроить. Это заставит Perl быть составлено в чистой окружающей среде LP64 (через + DD64 флага). Вы также можете использовать флаг-Duse64bitint настроить. Хотя Есть некоторые незначительные различия между компиляции Perl с этим флагом против Duse64bitall-флаг, они не должны быть видны из Perl зрения пользователя. В обоих случаях она настоятельно рекомендовала использовать эти флаги, когда вы запускаете Настроить. Если вы не используете это, но затем ответить на вопросы по поводу 64-разрядных чисел, когда Настроить спросит вас, вы можете получить конфигурацию, которая не может быть составлен, или что не работает, как ожидалось. (Заметим, что эти флаги Настроить будет работать только с HP в ANSI C компилятор. Если вы хотите скомпилировать Perl с использованием GCC, вам придется получить версию компилятора, которые поддерживают 64-битные операции.) GDBM и нитки Если попытаться обобщить Perl с резьбой на 11.X системы, а также ссылку на GDBM библиотеки, то Perl немедленно дамп, когда он запускается. Единственный обходной на данный момент заключается в том, чтобы relink с GDBM библиотеку под 11.X, затем relink его в Perl. NFS файловые системы и utime(2) При составлении Perl на дистанционно монтируется файловая система NFS, тест IO / fs.t могут провалиться по испытанию # 18. Это, как представляется, ошибка в HP-UX и никакие исправления имеющихся в настоящее время. Perl-P и / /
В HP-UX Perl составлен с флагами, которые будут создавать проблемы, если-С флагом Perl (Perl preprocess код с C препроцессор перед Perl видит его) не используется. Проблема заключается в том, что // который в C + +-стиль-до конца строки комментария, исчезнут вместе с оставшейся части строки. Это означает, что общие Perl, как строит
превратится в незаконном код
Обойти ее можно использовать некоторые другие цитировании сепаратор, чем "/" как например "!" вернутся в хостинг словарь хостинг |
| Copyright 2005-2010, Miheeff.ru | |
| Покупка хостинга и доменов: (495) 782-7256 | |
| тех. поддержка: pr@miheeff.com | |