所有 postfix 的 rpm 都是为 MySQL 5.0 构建的,但是我的服务器上安装了 MySQL 5.1,如何继续安装具有 MySQL 支持的 MySQL 5.1 的 postfix?
答案1
CentosPlus 存储库中现有的版本应该可以工作,它的依赖关系是:
libmysqlclient.so.15
libmysqlclient.so.15(libmysqlclient_15)
但是如果它不起作用,那么获取现有的 RPM 源:
http://mirror.centos.org/centos/5.5/centosplus/SRPMS/
确保您的系统上安装了以下内容(以 root 身份执行“yum install FOO”)以及“rpm-build”包:
$ cat postfix.spec | grep BuildRequires
BuildRequires: gawk, perl, sed, ed, db4-devel, pkgconfig, zlib-devel
BuildRequires: setup >= 2.5.36-1
BuildRequires: openldap >= 2.0.27, openldap-devel >= 2.0.27
BuildRequires: cyrus-sasl >= 2.1.10, cyrus-sasl-devel >= 2.1.10
BuildRequires: pcre, pcre-devel
BuildRequires: mysql, mysql-devel
BuildRequires: postgresql, postgresql-libs, postgresql-devel
BuildRequires: openssl-devel >= 0.9.6
以普通用户身份运行以下命令来设置基本的 RPM 构建:
cd ~/
mkdir -p redhat/{BUILD,SOURCES,SPECS,SRPMS}
mkdir -p redhat/RPMS/{athlon,i386,i486,i586,i668,x86_64,noarch}
echo -e "%_topdir $HOME/redhat\n%packager root <root@localhost>" > ~/.rpmmacros
将您从上面下载的 SRPM 放入 ~/redhat/SRPMS/,然后:
rpmbuild -ba postfix-2.3.3-2.1.centos.mysql_pgsql.src.rpm
...为您安装的 MySQL 5.1 RPM 创建一个兼容的包,您知道该包是根据它们构建的。
答案2
无需重建 Postfix。只需安装与 Mysql 5.1 服务器相同版本的 Mysql 5.1 shared-compat 包即可。这将提供 Centos 5.x 所需的 libmysql。