执行perl -MCPAN -e “install DBD::mysql”命令进行安装,但安装不是很顺利,没有一次性安装成功
报“Warning (usually harmless): ‘YAML’ not installed, will not store persistent state”
那需要先安装YAML
执行命令perl -MCPAN -e shell
然后执行install YAML
安装成功后退出,再次执行perl -MCPAN -e “install DBD::mysql”又出现问题
Library not loaded: libmysqlclient.21.dylib
Library not loaded: libssl.1.0.0.dylib
Library not loaded: libcrypto.1.0.0.dylib
执行如下命令:
sudo ln -s /usr/local/mysql/lib/libmysqlclient.21.dylib /usr/local/lib/libmysqlclient.21.dylib
sudo ln -s /usr/local/mysql/lib/libssl.1.0.0.dylib /usr/local/lib/libssl.1.0.0.dylib
sudo ln -s /usr/local/mysql/lib/libcrypto.1.0.0.dylib /usr/local/lib/libcrypto.1.0.0.dylib
上面的命令针对大于10.10的版本
在10.10中解决这个问题,只要执行这个命令即可:
sudo ln -s /usr/local/mysql/lib/libmysqlclient.21.dylib /usr/lib/libmysqlclient.21.dylib
sudo ln -s /usr/local/mysql/lib/libssl.1.0.0.dylib /usr/lib/libssl.1.0.0.dylib
sudo ln -s /usr/local/mysql/lib/libcrypto.1.0.0.dylib /usr/lib/libcrypto.1.0.0.dylib
我们再次执行 perl -MCPAN -e “install DBD::mysql”又出现问题
./dbdimp.h:20:10: fatal error: 'DBIXS.h' file not found
这就是源码问题了,想了一下应该是perl版本低了,导致编译不过,mac 10.14.1 自带的perl的版本为5.18,直接上perl官网下载最新的源码进行安装,安装好后,再次执行perl -MCPAN -e “install DBD::mysql”,又出现问题
Can't locate object method "data" via package "CPAN::Modulelist" ,继续解决该问题 (参考https://www.cnblogs.com/seawwh/archive/2011/10/28/2227430.html)
rm -rf ~/.cpan
删除后在perl -MCPAN -e shell中执行reload index
然后执行install Bundle::CPAN
最后执行reload CPAN即可正常通过命令行install MODULES