mysql - 错误 "Can' t 链接/包含 C 库 'zstd'“在 Mac Big Sur 上安装 DBD::mysql - MacPorts MySQL

标签 mysql macports mysql-8.0 zstd dbd-mysql

我在 Big Sur 上使用 mysql8 - 它是随 MacPorts 安装的。我在通过 CPAN 和手动安装 DBD::mysql 时遇到了问题。我收到的错误消息是:

Checking if libs are available for compiling... 
Can't link/include C library 'zstd', aborting.

一些可能有帮助的(可能完全不相关的)事实 - 我正在黑暗中摸索:

  • 我正在使用/usr/bin/perl,尽管 MacPorts Perl 显示为 “积极的”。 @INC 不包含/opt 中的任何内容
  • 我在/opt/local/lib 中找到以下内容:
lrwxr-xr-x    1 root  admin        19 Mar  6 12:30 libzstd.1.dylib -> libzstd.1.4.9.dylib
-rw-r--r--    1 root  admin   1112760 Mar  6 12:30 libzstd.a
lrwxr-xr-x    1 root  admin        19 Mar  6 12:30 libzstd.dylib -> libzstd.1.4.9.dylib
  • 当我运行 mysql_config 时,我得到以下与库相关的输出:
--libs           [-L/opt/local/lib/mysql8/mysql -lmysqlclient -lz -lzstd -lssl -lcrypto -lresolv]

有什么提示吗?非常感谢!

最佳答案

我在最近的 M1 macbook 上安装 DBD:mysql 时遇到了同样的问题。 我通过安装 perlbrew(然后重新安装 perl)并进行手动安装解决了这个问题:

https://perlbrew.pl/

Perlbrew 使您可以选择安装和运行其他版本的 perl(OSX 使用的“供应商”版本除外)。

然后我下载了 DBD::mysql 包 ( https://metacpan.org/pod/DBD::mysql )。 然后我进行了手动安装,设置链接器标志以消除丢失的库。

perl Makefile.PL --libs="-L/opt/homebrew/Cellar/mysql/8.0.25_1/lib -lmysqlclient"
make
make test
make install

关于mysql - 错误 "Can' t 链接/包含 C 库 'zstd'“在 Mac Big Sur 上安装 DBD::mysql - MacPorts MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67345615/

相关文章:

mysql - MySQL 8.0.16 在 Windows 10 上的登录问题

mysql - 从 mysql ver 8 中的 mysql cli 错误调用 mysql 函数 PASSWORD

mysql - 如果表中的所有列都是某个唯一键的一部分,可以吗?

php - 如何在不刷新PHP页面的情况下更新MYSQL字段?

python - 系统 python 与用户 python

python - 使用 MacPorts 安装后找不到 virtualenv 命令

macports - 阻止 MacPorts 安装预建包?

mysql - 启用 “use gRPC for file sharing”后,macos上的Docker 2.4无法正确安装卷

php - 如何使用 codeigniter 3 中的 dbforge 类在时间戳字段中设置更新属性

java - Slackware 12 真的很慢 JDBC