MacBook Air(M1 macOS Monterey 12.0.1)でDBD::mysql

[English]

色々と試行錯誤したため、以下のやり方で利用可能となるか確信がないが、メモとして記述。

Dockerを使った手順は以下のリンクを参照。
apache + perl + cgi + mysql(DBD::mysql, DBI)環境をMacBook Air(M1)のDockerに構築

 

 

(1)  brew install openssl
(2) ~/.zshrcに以下を追加

export LIBRARY_PATH=/opt/homebrew/opt/openssl/lib
export C_INCLUDE_PATH=/Library/Developer/CommandLineTools/SDKs/MacOSX11.3.sdk/System/Library/Perl/Extras/5.30/darwin-thread-multi-2level/auto/DBI/
export CPLUS_INCLUDE_PATH=/Library/Developer/CommandLineTools/SDKs/MacOSX11.3.sdk/System/Library/Perl/Extras/5.30/darwin-thread-multi-2level/auto/DBI/

(3)source ~/.zshrc
(4)DBI-1.643.tar.gzをダウンロードしてインストール
(4.1)GET https://www.cpan.org/modules/by-module/DBI/DBI-1.643.tar.gz
(4.2)任意のディレクトリで解凍
(4.3)perl Makefile.PL
(4.4)make
(4.5)make install

(5) cpan install DBD::mysql

 

■補足

(1)~/.zshrc へのパスの追加について

export LIBRARY_PATH=/opt/homebrew/opt/openssl/lib

-> cpan install DBD::mysql で “Can’t link/include C library ‘ssl’, ‘crypto’, aborting.”となるのを避けるため。

export C_INCLUDE_PATH=/Library/Developer/CommandLineTools/SDKs/MacOSX11.3.sdk/System/Library/Perl/Extras/5.30/darwin-thread-multi-2level/auto/DBI/
export CPLUS_INCLUDE_PATH=/Library/Developer/CommandLineTools/SDKs/MacOSX11.3.sdk/System/Library/Perl/Extras/5.30/darwin-thread-multi-2level/auto/DBI/

-> ‘DBIXS.h’ file not foundを避けるため

DBI-1.643.tar.gzをインストールする理由
->以下の情報を参考にした。
https://stackoverflow.com/questions/68774807/dbdmysql-installation-on-catalina-big-sur-fail-with-extern-h-file-not-found

Dockerを使って環境を作りたい場合、以下も参照のこと。

apache + perl + cgi + mysql(DBD::mysql, DBI)環境をMacBook Air(M1)のDockerに構築