由于重新升级了macports,Perl更新l到5.10.1,原先的CPAN库要重装。不使用系统的Perl是因为避免今后OSX更新导致的问题。在DBD-Mysql make test时出现:
# Failed test ‘use DBD::mysql;’
# at t/00base.t line 21.
# Tried to use ‘DBD::mysql’.
# Error: Can’t find ‘boot_DBD__mysql’ symbol in /Volumes/users/night/.cpan/build/DBD-mysql-4.012-jPYwzP/blib/arch/auto/DBD/mysql/mysql.bundle
很奇怪,似乎link的lib不对。perl -V仔细检查了一下,发现还是64bit的问题。Snow Leopard中默认都编译为64bit,因此
perllib编译为x86_64,而mysql我安装的时候选择了i386版本,这样导致bundle无法正确加载了。
解决: 重新下载并安装x86_64版本的mysql for osx。 这下测试全部通过。
提示:
像我上篇所言,Snow Leopard默认都是64bit的代码,因此如果下载预编译的第三方库,一定要下载x86_64版本,
否则无法link。