Strona 1 z 1

[+] Perl - DBD::mysql błąd instalacji

: 06 lutego 2012, 13:11
autor: sponsoriada
Witam.
Chciałem zacząć przygodę z Perlem, jednak na samym początku mam problem.
Polega on na tym, że nie mogę zainstalować modułu DBD:mysql.

Poniżej logi:

Kod: Zaznacz cały

root@espons:/usr/lib/mysql/plugin# perl -MCPAN -e 'install DBD::mysql'
CPAN: Storable loaded ok (v2.20)
Reading '/root/.cpan/Metadata'
  Database was generated on Mon, 06 Feb 2012 10:11:33 GMT
Running install for module 'DBD::mysql'
Running make for C/CA/CAPTTOFU/DBD-mysql-4.020.tar.gz
CPAN: Digest::SHA loaded ok (v5.70)
CPAN: Compress::Zlib loaded ok (v2.048)
Checksum for /root/.cpan/sources/authors/id/C/CA/CAPTTOFU/DBD-mysql-4.020.tar.gz ok
CPAN: Archive::Tar loaded ok (v1.82)
DBD-mysql-4.020/
DBD-mysql-4.020/ChangeLog
DBD-mysql-4.020/constants.h
DBD-mysql-4.020/dbdimp.c
DBD-mysql-4.020/dbdimp.h
DBD-mysql-4.020/eg/
DBD-mysql-4.020/eg/bug14979.pl
DBD-mysql-4.020/eg/bug21028.pl
DBD-mysql-4.020/eg/bug30033.pl
DBD-mysql-4.020/eg/bug30033pg.pl
DBD-mysql-4.020/eg/decimal_test.pl
DBD-mysql-4.020/eg/issue21946.pl
DBD-mysql-4.020/eg/prepare_memory_usage.pl
DBD-mysql-4.020/eg/proc_example1.pl
DBD-mysql-4.020/eg/proc_example2.pl
DBD-mysql-4.020/eg/proc_example2a.pl
DBD-mysql-4.020/eg/proc_example2b.pl
DBD-mysql-4.020/eg/proc_example3.pl
DBD-mysql-4.020/eg/proc_example4.pl
DBD-mysql-4.020/INSTALL.html
DBD-mysql-4.020/lib/
DBD-mysql-4.020/lib/Bundle/
DBD-mysql-4.020/lib/Bundle/DBD/
DBD-mysql-4.020/lib/Bundle/DBD/mysql.pm
DBD-mysql-4.020/lib/DBD/
DBD-mysql-4.020/lib/DBD/mysql/
DBD-mysql-4.020/lib/DBD/mysql/GetInfo.pm
DBD-mysql-4.020/lib/DBD/mysql/INSTALL.pod
DBD-mysql-4.020/lib/DBD/mysql.pm
DBD-mysql-4.020/Makefile.PL
DBD-mysql-4.020/Makefile.PL.embedded
DBD-mysql-4.020/MANIFEST
DBD-mysql-4.020/MANIFEST.SKIP
DBD-mysql-4.020/META.yml
DBD-mysql-4.020/myld
DBD-mysql-4.020/mysql.xs
DBD-mysql-4.020/README
DBD-mysql-4.020/t/
DBD-mysql-4.020/t/00base.t
DBD-mysql-4.020/t/10connect.t
DBD-mysql-4.020/t/20createdrop.t
DBD-mysql-4.020/t/25lockunlock.t
DBD-mysql-4.020/t/29warnings.t
DBD-mysql-4.020/t/30insertfetch.t
DBD-mysql-4.020/t/31insertid.t
DBD-mysql-4.020/t/32insert_error.t
DBD-mysql-4.020/t/35limit.t
DBD-mysql-4.020/t/35prepare.t
DBD-mysql-4.020/t/40bindparam.t
DBD-mysql-4.020/t/40bindparam2.t
DBD-mysql-4.020/t/40blobs.t
DBD-mysql-4.020/t/40catalog.t
DBD-mysql-4.020/t/40keyinfo.t
DBD-mysql-4.020/t/40listfields.t
DBD-mysql-4.020/t/40nulls.t
DBD-mysql-4.020/t/40nulls_prepare.t
DBD-mysql-4.020/t/40numrows.t
DBD-mysql-4.020/t/40server_prepare.t
DBD-mysql-4.020/t/40server_prepare_error.t
DBD-mysql-4.020/t/40types.t
DBD-mysql-4.020/t/41bindparam.t
DBD-mysql-4.020/t/41blobs_prepare.t
DBD-mysql-4.020/t/42bindparam.t
DBD-mysql-4.020/t/50chopblanks.t
DBD-mysql-4.020/t/50commit.t
DBD-mysql-4.020/t/51bind_type_guessing.t
DBD-mysql-4.020/t/52comment.t
DBD-mysql-4.020/t/53comment.t
DBD-mysql-4.020/t/55utf8.t
DBD-mysql-4.020/t/60leaks.t
DBD-mysql-4.020/t/65types.t
DBD-mysql-4.020/t/70takeimp.t
DBD-mysql-4.020/t/71impdata.t
DBD-mysql-4.020/t/75supported_sql.t
DBD-mysql-4.020/t/76multi_statement.t
DBD-mysql-4.020/t/80procs.t
DBD-mysql-4.020/t/85init_command.t
DBD-mysql-4.020/t/86_bug_36972.t
DBD-mysql-4.020/t/lib.pl
DBD-mysql-4.020/t/mem_leak.pl
DBD-mysql-4.020/t/mysql.dbtest
DBD-mysql-4.020/t/mysql.mtest
DBD-mysql-4.020/TODO
CPAN: File::Temp loaded ok (v0.22)
CPAN: Parse::CPAN::Meta loaded ok (v1.4401)
CPAN: CPAN::Meta loaded ok (v2.120351)
CPAN: Module::CoreList loaded ok (v2.18)


  CPAN.pm: Building C/CA/CAPTTOFU/DBD-mysql-4.020.tar.gz


Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 83.


Cannot find the file 'mysql_config'! Your execution PATH doesn't seem
not contain the path to mysql_config. Resorting to guessed values!
Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located




PLEASE NOTE:


For 'make test' to run properly, you must ensure that the
database user 'root' can connect to your MySQL server
and has the proper privileges that these tests require such
as 'drop table', 'create table', 'drop procedure', 'create procedure'
as well as others.


mysql> grant all privileges on test.* to 'root'@'localhost' identified by 's3kr1t';


You can also optionally set the user to run 'make test' with:


perl Makefile.PL --testuser=username


Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Can't exec "mysql_config": Nie ma takiego pliku ani katalogu at Makefile.PL line 478.
Can't find mysql_config. Use --mysql_config option to specify where mysql_config is located
Failed to determine directory of mysql.h. Use


  perl Makefile.PL --cflags=-I<dir>


to set this directory. For details see the INSTALL.html file,
section "C Compiler flags" or type


  perl Makefile.PL --help
Warning: No success on command[/usr/bin/perl Makefile.PL INSTALLDIRS=site]
'YAML' not installed, will not store persistent state
  CAPTTOFU/DBD-mysql-4.020.tar.gz
  /usr/bin/perl Makefile.PL INSTALLDIRS=site -- NOT OK
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install
Could not read metadata file. Falling back to other methods to determine prerequisites



: 06 lutego 2012, 13:30
autor: mariaczi
Brakujący Ci mysql_config znajduje się w pakiecie libmysqlclient-dev. Masz ten pakiet zainstalowany?

: 06 lutego 2012, 14:20
autor: sponsoriada
Udało się, super.
Mam jeszcze jedną prośbę. Chciałbym wyciągnąć wszystkie dane z tabeli.
Do pojedynczego wiersza jest fetchrow_arrayref, jak zrobić żeby wyciągnęło mi wszystkie wiersze z tabeli i wrzuciło do tablicy?

: 06 lutego 2012, 17:20
autor: mariaczi
fetchall_arrayref? Warto zaglądać do dokumentacji ;)

: 06 lutego 2012, 17:47
autor: sponsoriada
Dziękuję. Przesiadłem się z PHP na Perla i jak na razie średnio mi to idzie.
Może masz parę ciekawych linków, żeby się lepiej zapoznać z możliwościami Perla?
Z jakiej dokumentacji korzystasz?

: 06 lutego 2012, 18:04
autor: mariaczi
Zawsze aktualna: perldoc. Następnie dokumentacja rozszerzeń, z których chcę skorzystać i "podpieranie" się google :) (zapytania zadawane w języku angielskim)