macos - 我安装了 Perl5.28 并安装了 Net::LibIDN 但 amavisd 找不到它
问题描述
我在 MacMini 上,使用 Homebrew 安装东西。
但是 - amavisd 无法启动,因为它显然找不到这个 Net::IDN 模块?
我得到这个
ERROR: MISSING REQUIRED BASIC MODULES:
Net::LibIDN
BEGIN failed--compilation aborted at /usr/local/sbin/amavisd line 251.
但我确定它已安装。
Fetching http://www.cpan.org/authors/id/D/DA/DAGOLDEN/install- 0.01.tar.gz ... OK
Configuring install-0.01 ... OK
Building and testing install-0.01 ... OK
Successfully installed install-0.01
Net::LibIDN is up to date. (0.12)
1 distribution installed
那么我如何告诉 Perl 现在找到它呢?
编辑:所以我强制重新安装 - 但仍然没有乐趣
zeus:~ robert$ sudo cpanm --reinstall Net::LibIDN
Password:
--> Working on Net::LibIDN
Fetching http://www.cpan.org/authors/id/T/TH/THOR/Net-LibIDN-0.12.tar.gz ... OK
Configuring Net-LibIDN-0.12 ... OK
Building and testing Net-LibIDN-0.12 ... OK
Successfully reinstalled Net-LibIDN-0.12
1 distribution installed
zeus:~ robert$
并尝试运行 amavisd ...
zeus:~ robert$ sudo /usr/local/sbin/amavisd -c /usr/local/etc/amavisd.conf debug
Password:
ERROR: MISSING REQUIRED BASIC MODULES:
Net::LibIDN
BEGIN failed--compilation aborted at /usr/local/sbin/amavisd line 251.
zeus:~ robert$
所以由于某种原因,amavisd-new 似乎找不到该模块。只是那个模块?
解决方案
这是因为amavisd
使用系统 perl,而cpanm
安装到自定义 perl 并在那里安装模块。
要么将模块安装到系统 perl,要么尝试说服amavisd
在自定义 perl 中运行(可能涉及手动更改其源文件中的 shebang 行)。
推荐阅读
- asp.net-core - 为什么在使用此 AspNetCoreRateLimit 中间件 for Asp.Net Core 时无法获得启动的速率限制
- speech-to-text - 登录认知服务语音容器预览时出错
- sql-server - 试图分解 SQL 查询的结果以显示每个月的数据
- drupal - 如何在 Twig 中以纯文本形式显示变量的内容?
- regex - number(a,b) 格式的有效正则表达式
- c++ - 尝试使用采用结构并设置值的函数创建链表
- wordpress - 如何重置重力表单中所有记录的特定字段
- android - 如何在颤动中显示带有提交按钮和隐藏输入字段的html表单
- java - Java弹性搜索:获取索引的最后一个ID
- apache-kafka - 为什么消息代理不提供发送的总数据/消息指标?