Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / MySQL / Установка MySQL /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Замечания по установке Perl - Программирование от RIN.RU
Замечания по установке Perl



Установка дистрибутива Perl для MySQL на Windows


Дистрибутив Perl для MySQL содержит DBI, DBD:MySQL и DBD:ODBC.


  • Загрузите дистрибутив Perl для Windows с http://www.mysql.com/download.html.

  • Разархивируйте дистрибутив в C:, в результате чего вы получите каталог "C:\PERL".

  • Добавьте в ваш путь каталог "C:\PERL\BIN".

  • Добавьте в ваш путь каталог "C:\PERL\BIN\MSWIN32-x86-thread" или "C:\PERL\BIN\MSWIN32-x86".

  • Протестируйте работу perl, выполнив команду perl -v в оболочке DOS.




Проблемы использования интерфейса Perl DBI/DBD


Если Perl сообщает, что не может найти модуль "../mysql/mysql.so", то проблема, возможно, заключается в том, что Perl не может найти динамическую библиотеку "libmysqlclient.so".


Эту проблему можно устранить, используя любой из следующих методов:


  • Для сборки дистрибутива Msql-Mysql-modules используйте perl Makefile.PL -static -config вместо perl Makefile.PL.

  • Скопируйте "libmysqlclient.so" в каталог, где находятся другие динамические библиотеки ("/usr/lib" или "/lib").

  • Под Linux можно добавить путь к каталогу, где находится "libmysqlclient.so" в файл "/etc/ld.so.conf".

  • Добавьте каталог, в котором находится "libmysqlclient.so", в переменную окружения LD_RUN_PATH.


Если вы получаете от DBD-mysql представленные ниже ошибки, то, скорее всего, у вас используется компилятор gcc (или старый бинарный код, скомпилированный с gcc):


/usr/bin/perl: can"t resolve symbol "__moddi3"
/usr/bin/perl: can"t resolve symbol "__divdi3"


Добавьте в команду линкования при сборке библиотеки "mysql.so", -L/usr/lib/gcc-lib/... -lgcc (нужно проверить вывод из make для "mysql.so" при компиляции клиента Perl). Опция -L должна указывать путь к каталогу, где находится "libgcc.a" в вашей системе.


Еще одна причина появления ошибок может заключаться в том, что оба модуля - Perl и MySQL не скомпилированы вместе компилятором gcc. В этом случае данное несоответствие можно устранить, скомпилировав оба модуля компилятором gcc.


Если при выполнении тестов вы получаете от модуля Msql-Mysql-modules
следующие ошибки:


t/00base............install_driver(mysql) failed:
Can"t load "../blib/arch/auto/DBD/mysql/mysql.so" for module DBD::mysql:
../blib/arch/auto/DBD/mysql/mysql.so: undefined symbol:
uncompress at /usr/lib/perl5/5.00503/i586-linux/DynaLoader.pm line 169,


то это означает, что в строку линкования необходимо включить библиотеку сжатия -lz. Для этого необходимо внести следующее изменение в файл "lib/DBD/mysql/Install.pm":


$sysliblist .= " -lm";


на


$sysliblist .= " -lm -lz";


После этого необходимо выполнить команду make realclean и затем повторить процесс инсталляции сначала.


Если вы хотите использовать эти модули в системе, которая не поддерживает динамического линкования (вроде Caldera/SCO), то можно сгенерировать статическую версию Perl, включающую DBI и DBD-mysql. Она будет работать следующим образом: нужно создать версию Perl, слинкованную с кодом DBI, и установить ее поверх текущего Perl. Затем эта версия используется для
сборки версии Perl, которая дополнительно включает слинкованный код DBD, и устанавливается уже она.


В операционной системе Caldera (SCO) необходимо иметь следующий набор переменных окружения:


shell> LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib:/usr/progressive/lib
или
shell> LD_LIBRARY_PATH=/usr/lib:/lib:/usr/local/lib:/usr/ccs/lib:\
/usr/progressive/lib:/usr/skunk/lib
shell> LIBPATH=/usr/lib:/lib:/usr/local/lib:/usr/ccs/lib:\
/usr/progressive/lib:/usr/skunk/lib
shell> MANPATH=scohelp:/usr/man:/usr/local1/man:/usr/local/man:\
/usr/skunk/man:


Вначале следует создать модуль Perl, включающий статически слинкованный
DBI. Это делается путем выполнения следующих команд в каталоге, где располагается дистрибутив DBI:


shell> perl Makefile.PL -static -config
shell> make
shell> make install
shell> make perl


Затем необходимо установить новый модуль Perl. Вывод команды make perl укажет точную команду make, которую необходимо будет выполнить для завершения установки. Для Caldera (SCO) это будет команда make -f
Makefile.aperl inst_perl MAP_TARGET=perl
.


Затем нужно использовать только что созданный модуль Perl для создания еще одного модуля Perl, который также включает в себя статически слинкованный модуль DBD::mysql. Это делается путем выполнения следующих команд в каталоге, где располагается дистрибутив Msql-Mysql-modules:


shell> perl Makefile.PL -static -config
shell> make
shell> make install
shell> make perl


И в завершение осталось установить этот новый модуль Perl. Какую команду для этого использовать, вы опять узнаете из вывода make perl.

<<<  Назад
 1  2 


 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Быстрая стандартная установка MySQL

Общие вопросы инсталляции

Установка исходного дистрибутива MySQL

Послеустановочные настройка и тестирование

Апгрейд/даунгрейд MySQL

Заметки по операционным системам

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь