メモ > 技術 > プログラミング言語: Perl > ローカル環境構築(XAMPP)
■ローカル環境構築(XAMPP)
■XAMPPインストール
通常の手順でインストールする
■CPANからモジュールを追加
まずは以下を対応する
Perl〜XAMPPのCPANでエラー
https://nandaka.net/archives/1013
エクスプローラーで以下を開く
C:\xampp\perl\bin
cpan.bat をダブルクリックで実行する
以下のとおり「install Image::EXIF」をインストールできた
Loading internal logger. Log::Log4perl recommended for better logging
Unable to get Terminal Size. The Win32 GetConsoleScreenBufferInfo call didn't work. The COLUMNS and LINES environment variables didn't work. at C:\xampp\perl\vendor\lib/Term/ReadLine/readline.pm line 410.
cpan shell -- CPAN exploration and modules installation (v2.27)
Enter 'h' for help.
cpan> install Image::EXIF
Database was generated on Tue, 31 Oct 2023 08:14:11 GMT
Running install for module 'Image::EXIF'
Checksum for C:\xampp\cpan\sources\authors\id\A\AR\ARC\Image-EXIF-2.01.tar.gz ok
Scanning cache C:\xampp\cpan\build for sizes
............................................................................DONE
Configuring A/AR/ARC/Image-EXIF-2.01.tar.gz with Makefile.PL
Checking if your kit is complete...
Looks good
〜略〜
ok 1
Lockfile removed.
ARC/Image-EXIF-2.01.tar.gz
C:\xampp\c\bin\gmake.exe test -- OK
Running make install for ARC/Image-EXIF-2.01.tar.gz
"C:\xampp\perl\bin\perl.exe" -MExtUtils::Command::MM -e cp_nonempty -- EXIF.bs blib\arch\auto\Image\EXIF\EXIF.bs 644
Files found in blib\arch: installing files in blib\lib into architecture dependent library tree
Installing \xampp\perl\site\lib\auto\Image\EXIF\EXIF.xs.dll
Installing \xampp\perl\site\lib\Image\EXIF.pm
Appending installation info to \xampp\perl\lib/perllocal.pod
ARC/Image-EXIF-2.01.tar.gz
C:\xampp\c\bin\gmake.exe install UNINST=1 -- OK
それらしいファイルが以下に作成されている
C:\xampp\perl\site\lib\Image\EXIF.pm
コマンドライン経由だとモジュールを参照できるが、Apache経由だと参照できず
…だったが、Windowsを再起動すると解消した
#!/xampp/perl/bin/perl
use strict;
use warnings;
use Image::Exif;
print "Content-Type: text/html; charset=Shift_JIS\n\n";
print "<html>\n";
print "<head><title>Perl</title></head>\n";
print "<body>\n";
print "<p>Perl = " . $] . "</p>\n";
print "</body>\n";
print "</html>\n";
exit;
"Shade検索"Wiki
https://shade-search.com/sts/term/term.php?sort=category&category_filter=Perl&noform=all
10年くらいぶりにPerlのCPANモジュールをインストールしようとしたら全然覚えてなくて焦った。 - tohokuaikiのチラシの裏
https://tohokuaiki.hateblo.jp/entry/2018/09/27/10%E5%B9%B4%E3%81%8F%E3%82%89%E3%81%84%E3%81%B6%E3%82...
Perl モジュールのインストール方法 | CMSプラットフォーム Movable Type ドキュメントサイト
https://www.movabletype.jp/documentation/mt7/appendices/install-perl-modules/
CPAN - CPANからモジュールインストール - Perlゼミ|Perlの基礎をインストールからサンプルで丁寧に解説
https://perlzemi.com/blog/20100504127089.html
PerlでDBIでMySQLに接続 - m_shige1979のときどきITブログ
https://m-shige1979.hatenablog.com/entry/2014/03/04/211419
■データベース接続
PerlでDBIでMySQLに接続 - m_shige1979のときどきITブログ
https://m-shige1979.hatenablog.com/entry/2014/03/04/211419
PerlのDBIモジュールで自動的にUTF8フラグを付ける - ノウハウブログ - カンタローCGI
https://kantaro-cgi.com/blog/perl/auto_utf8_flagon_by_dbi.html
Perl DBI と UTF8フラグ と 文字化け問題 (2017/05/31追記) - adiary開発日誌
https://adiary.adiary.jp/0367
DBIのインストールコマンドを実行しなくても接続できているような
CPANの設定をしたことで、使えるようになったのか
#!/xampp/perl/bin/perl
use strict;
use warnings;
use DBI;
my $dbh;
$dbh = DBI->connect(
'DBI:mysql:database=test;host=localhost;port=3306;',
'root',
'1234',
{
mysql_enable_utf8 => 1
}
);
print "Content-Type: text/html; charset=UTF-8\n\n";
print "<html>\n";
print "<head><title>Perl + MySQL</title></head>\n";
print "<body>\n";
print "<h1>Perl + MySQL</h1>\n";
print "<ul>\n";
my $sth;
my $ref;
$sth = $dbh->prepare('SELECT * FROM table_test LIMIT 10;');
$sth->execute();
while ($ref = $sth->fetchrow_hashref()) {
print "<li>$ref->{'id'}: $ref->{'text'}</li>\n";
}
$sth->finish();
print "</ul>\n";
print "</body>\n";
print "</html>\n";
exit;