perlnetware
СОДЕРЖАНИЕ
НАЗВАНИЕ
perlnetware - Perl для NetWare
ОПИСАНИЕ
В этом файле приведены инструкции по сборке Perl 5.7 и выше, а также Perl-модулей для NetWare. Перед началом работы рекомендуется прочитать файл README, расположенный в корневой директории, куда была извлечена дистрибуция исходного кода Perl. Убедитесь, что вы прочитали и поняли условия распространения программного обеспечения.
СОСТАВЛЕНИЕ
Этот раздел описывает шаги, которые необходимо выполнить для сборки Perl NLM и других связанных NLM.
Инструменты и SDK
Для сборки требуется компилятор и компоновщик CodeWarrior. Кроме того, необходимы «NetWare SDK», «NLM & NetWare Libraries for C» и «NetWare Server Protocol Libraries for C», доступные по адресу http://developer.novell.com/wiki/index.php/Category:Novell_Developer_Kit. Также требуется Microsoft Visual C++ версии 4.2 или более поздней.
Настройка
Процесс сборки зависит от расположения NetWare SDK. После установки инструментов и SDK необходимо настроить среду сборки. Для этого используются следующие файлы пакетных команд.
- SetNWBld.bat
-
Для выполнения этого файла требуются 2 параметра в качестве входных данных. Первый — путь к NetWare SDK, второй — путь к компилятору и инструментам CodeWarrior. Выполнение этого файла задаёт эти пути, а также устанавливает тип сборки по умолчанию в Release.
- Buildtype.bat
-
Используется для установки типа сборки в отладку или релиз. Изменяйте тип сборки только после выполнения SetNWBld.bat
Пример:
-
Ввод «buildtype d on» в командной строке устанавливает тип сборки в Отладка с установленным флагом D2.
-
Ввод «buildtype d off» или «buildtype d» в командной строке устанавливает тип сборки в Отладка с установленным флагом D1.
-
Ввод «buildtype r» в командной строке устанавливает тип сборки в Релиз.
-
Сборка
Процесс сборки выполняется только в оболочке WinNT. Файл make для NetWare расположен в папке NetWare. Он использует miniperl.exe для выполнения некоторых Perl-скриптов. Для создания miniperl.exe сначала необходимо установить требуемые пути для компилятора Visual c++ (укажите расположение vcvars32) в командной строке. Затем выполните nmake из папки win32 через командную строку WinNT. Процесс сборки можно остановить после создания miniperl.exe. Затем выполните nmake из папки NetWare через командную строку WinNT.
В настоящее время на NetWare протестированы следующие два типа сборки:
-
Определены USE_MULTI, USE_ITHREADS и USE_IMP_SYS
-
Определены USE_MULTI и USE_IMP_SYS, а USE_ITHREADS не определён
Интерпретатор
После завершения создания miniperl.exe выполните nmake из папки NetWare. Это создаст Perl-интерпретатор для NetWare в виде perl.nlm. Он копируется в папку Release, если вы выполняете релизную сборку, в противном случае он будет скопирован в папку Debug для отладочных сборок.
Расширения
Процесс сборки также создаёт Perl-расширения как <Extension.nlm>
УСТАНОВКА
Чтобы установить Perl для NetWare на сервер NetWare, сначала необходимо подключить системный том сервера NetWare к i:. Это связано с тем, что файл make по умолчанию устанавливает букву диска в i:. Введите nmake nwinstall из папки NetWare в командной строке WinNT. Это скопирует двоичные файлы и файлы модулей на сервер NetWare в папку sys:\Perl. Perl-интерпретатор perl.nlm копируется в папку sys:\perl\system. Скопируйте его в папку sys:\system.
Пример: Введите в командной строке «nmake nwinstall». Это установит Perl для NetWare на сервер NetWare. Аналогично, если вы введёте «nmake install», это приведет к установке двоичных файлов на локальной машине. (Обычно в папке c:\perl)
СОСТАВЛЕНИЕ НОВЫХ РАСШИРЕНИЙ
Для сборки расширений, отличных от стандартных, Perl для NetWare должен быть установлен на Windows вместе с Windows Perl. Perl для Windows можно загрузить с сайта CPAN и собрать из исходных кодов, либо двоичные файлы можно загрузить непосредственно с сайта ActiveState. Установку можно выполнить, вызвав nmake install из папки NetWare в командной строке WinNT после сборки Perl для NetWare, выполнив шаги, описанные выше. Это скопирует все файлы *.pm и другие необходимые файлы. Файлы документации не копируются. Таким образом, необходимо сначала установить Windows Perl, а затем Perl для NetWare.
После этого выполните следующие действия для сборки любого расширения:
-
Перейдите в каталог расширения, где находятся исходные файлы.
-
Выполните следующую команду в командной строке:
perl -II<path to NetWare lib dir> -II<path to lib> Makefile.plПример:
perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread \ -Ic:\perl\5.6.1\lib MakeFile.plили
perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread \ -Ic:\perl\5.8.0\lib MakeFile.pl -
nmake
-
nmake install
Установка скопирует файлы на компьютер Windows, где установлен Perl для NetWare, и эти файлы может потребоваться скопировать вручную на сервер NetWare. В качестве альтернативы, передайте INSTALLSITELIB=i:\perl\lib в качестве входных данных для makefile.pl выше. Здесь i: — сопоставленный диск с томом sys: сервера, на котором установлен Perl для NetWare. Теперь ввод nmake install скопирует файлы на сервер NetWare.
Пример: Вы можете выполнить следующее в командной строке.
perl -Ic:/perl/5.6.1/lib/NetWare-x86-multi-thread \ -Ic:\perl\5.6.1\lib MakeFile.pl INSTALLSITELIB=i:\perl\libили
perl -Ic:/perl/5.8.0/lib/NetWare-x86-multi-thread \ -Ic:\perl\5.8.0\lib MakeFile.pl INSTALLSITELIB=i:\perl\lib -
Примечание: Некоторым модулям, загруженным с CPAN, может потребоваться API, связанный с NetWare, для сборки на NetWare. Однако другие модули могут быть собраны без проблем или с незначительными изменениями в зависимости от типа модуля.
БЛАГОДАРНОСТИ
Файл make для Win32 используется в качестве ссылки для создания файла make для NetWare. Также процесс сборки для порта NetWare использует miniperl.exe для выполнения скриптов во время процесса сборки и установки.
АВТОРЫ
Anantha Kesari H Y (hyanantha@novell.com) Aditya C (caditya@novell.com)
ДАТА
-
Создано - 18 янв 2001
-
Изменено - 25 июн 2001
-
Изменено - 13 июл 2001
-
Изменено - 28 мая 2002
© 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.30.3/perlnetware