免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3891 | 回复: 6
打印 上一主题 下一主题

[Mail] 麻烦marion兄帮忙 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-10-18 17:35 |只看该作者 |倒序浏览
系统是rhel4,根据marion的文章搭建mail服务器,前面各部分的软件安装正常,就是在安装courier-authlib-0.59.3时有点问题
我用如下选项配置courier-authlib-0.59.3
./configure
    --prefix=/usr/local/courier-authlib
    --sysconfdir=/etc
    --without-authpam
    --without-authldap
    --without-authpwd
    --without-authshadow
    --without-authvchkpw
    --without-authpgsql
    --with-authmysql
    --with-mysql-libs=/usr/local/mysql/lib/mysql
    --with-mysql-includes=/usr/local/mysql/inculde/mysql
    --with-redhat
    --with-authmysqlrc=/etc/authmysqlrc
    --with-authdaemonrc=/etc/authdaemonrc
    CFLAGS="-march=i686 -O2 -fexpensive-optimizations"  
    CXXFLAGS="-march=i686 -O2 -fexpensive-optimizations"
在执行make的时候出现如下错误:
Compiling authmysql.c
In file included from authmysql.c:18:
authmysql.h:8:19: mysql.h: No such file or directory
authmysql.h:9:20: errmsg.h: No such file or directory
make[2]: *** [authmysql.lo] Error 1
make[2]: Leaving directory `/usr/local/src/courier-authlib-0.59.3'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/courier-authlib-0.59.3'
make: *** [all] Error 2
查资料说是缺少mysql-devel,于是就从系统安装盘安装了一个rpm格式的。

论坛徽章:
0
2 [报告]
发表于 2007-10-19 08:42 |只看该作者
原帖由 fish007 于 2007-10-18 17:35 发表
系统是rhel4,根据marion的文章搭建mail服务器,前面各部分的软件安装正常,就是在安装courier-authlib-0.59.3时有点问题
我用如下选项配置courier-authlib-0.59.3
./configure
    --prefix=/usr/local/co ...

装完mysql-devel后,问题仍旧

论坛徽章:
0
3 [报告]
发表于 2007-10-19 10:19 |只看该作者
这是由于编译时找不到所需要的mysql的相关头文件所致,你可以把mysql安装目录下的头文件链接至/usr/include或/usr/local/include来解决此问题。

另:这里并不需要那个rpm格式的mysql-devel……

[ 本帖最后由 marion 于 2007-10-19 10:20 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2007-10-20 10:06 |只看该作者
原帖由 marion 于 2007-10-19 10:19 发表
这是由于编译时找不到所需要的mysql的相关头文件所致,你可以把mysql安装目录下的头文件链接至/usr/include或/usr/local/include来解决此问题。

另:这里并不需要那个rpm格式的mysql-devel……

谢谢,按照你的建议,我把错误提示中所缺的authmysql.h(位于courier-authlib解压后的目录中),mysql.h(mysql的安装目录中的include/mysql目录中),errmsg.h(mysql源目录中的include目录下)拷贝至/usr/include中再make时出现如下错误提示(截取最后一部分):
/usr/include/mysql.h:278: error: storage size of `scramble' isn't known
/usr/include/mysql.h:712: error: storage size of `last_error' isn't known
/usr/include/mysql.h:713: error: storage size of `sqlstate' isn't known
make[2]: *** [authmysql.lo] Error 1
make[2]: Leaving directory `/usr/local/src/webmail/courier-authlib-0.59.3'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/webmail/courier-authlib-0.59.3'
make: *** [all] Error 2
还需你的解答,谢谢!

论坛徽章:
0
5 [报告]
发表于 2007-10-20 13:33 |只看该作者
这是由于编译时找不到所需要的mysql的相关头文件所致,你可以把mysql安装目录下的头文件链接至/usr/include或/usr/local/include来解决此问题。

仅仅拷贝那三个文件是不可以的。

类同如下:
#ln   -sv  /usr/local/mysql/include/mysql/*   /usr/local/include

[ 本帖最后由 marion 于 2007-10-20 13:34 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2007-10-20 14:58 |只看该作者
原帖由 marion 于 2007-10-20 13:33 发表
这是由于编译时找不到所需要的mysql的相关头文件所致,你可以把mysql安装目录下的头文件链接至/usr/include或/usr/local/include来解决此问题。

仅仅拷贝那三个文件是不可以的。

类同如下:
#ln   -sv   ...

非常感谢,回去我再试试看,然后再把结果贴上来。

论坛徽章:
0
7 [报告]
发表于 2007-10-22 14:49 |只看该作者
原帖由 marion 于 2007-10-20 13:33 发表
这是由于编译时找不到所需要的mysql的相关头文件所致,你可以把mysql安装目录下的头文件链接至/usr/include或/usr/local/include来解决此问题。

仅仅拷贝那三个文件是不可以的。

类同如下:
#ln   -sv   ...

根据marion的方法可以解决问题了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP