我尝试在AWS上安装OpenDKIM 2.9.2以生成DKIM public&私钥。当我在opendkim源代码文件夹下运行sudo ./configure --with-openssl=/usr/include/openssl
时,它给了我以下错误消息。
checking bsd/string.h usability... no
checking bsd/string.h presence... no
checking for bsd/string.h... no
checking for strlcat... no
checking for library containing strlcat... no
checking for library containing strlcpy... no
checking for strlcpy... no
checking for library containing strlcat... (cached) no
checking for library containing strlcpy... (cached) no
configure: error: no strlcpy/strlcat found
我搜索了系统,发现string.h文件位于以下文件夹
/usr/include/bits/string.h
/usr/include/string.h
/usr/include/linux/string.h
我在bsd
(/usr/include
)下创建了一个名为/usr/include/bsd
的文件夹,并创建了一个指向/usr/include/string.h
的软链接。然后,安装过程可以找到string.h
文件,但仍无法在该文件中找到strlcat
和strlcpy
函数。所以我想我需要安装libbsd
。然后我跑了" whereis libbsd
"我得到了#34; /usr/lib64/libbsd.a
"。所以我想已经安装了lib。
所以现在我不知道如何解决问题并从源代码安装OpenDKIM。
请帮我解决这个问题。提前谢谢。
答案 0 :(得分:15)
您需要安装 libbsd-dev
如果您使用的是ubuntu
sudo apt-get install libbsd-dev
如果您使用的是centOS
sudo yum install libbsd-devel
希望这有助于你
答案 1 :(得分:2)
我意识到已经选择了一个答案。但这对我来说在DigitalOcean的新CentOS 6.x安装上很有用。
安装RHEL EPEL Repos
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
sudo rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm
对于libbsd-devel的百胜
yum install libbsd-devel
参考: Installing RHEL EPEL Repo on Centos 5.x or 6.x, pkgs.org
答案 2 :(得分:0)
即使已经关闭,也要注意 - 亚马逊EC2 Linux也需要EPEL回购......
yum-config-manager --enable epel > /dev/null
yum update
yum install libbsd-devel