LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 934|回复: 6

安装QMAIL失败的一天!

[复制链接]
发表于 2004-7-7 18:50:06 | 显示全部楼层 |阅读模式
今天想安装一下QMAIL但是非常失败的说,从头到尾都没有正常过,呵奤,郁闷死了!哪位大大给指个错误的说!
首先,我是安装http://www.linuxforum.net/doc/qm ... order=0&thold=0
中的文章参考来做的,也不知道是我的系统有问题还是不理解,反正错误百出!
大家看看我的错误吧,没有一个包装的正确的!我用的系统是REDHAT9。0
首先checkpassword-0.90.tar.gz
[root@biglong checkpassword-0.90]# make
( cat warn-auto.sh; \
echo 'main="$1"; shift'; \
echo exec "`head -1 conf-ld`" \
'-o "$main" "$main".o ${1+"$@"}' \
) > load
chmod 755 load
sh find-systype.sh > systype
sh print-cc.sh > compile
chmod 755 compile
( ( ./compile tryspnam.c && ./load tryspnam ) >/dev/null \
2>&1 \
&& echo \#define HASGETSPNAM 1 || exit 0 ) > hasspnam.h
rm -f tryspnam.o tryspnam
( ( ./compile tryslib.c && \
./load tryslib -ls ) >/dev/null 2>&1 \
&& echo -ls || exit 0 ) > s.lib
rm -f tryslib.o tryslib
( ( ./compile tryuserpw.c \
  && ./load tryuserpw `cat s.lib` ) >/dev/null 2>&1 \
&& echo \#define HASGETUSERPW 1 || exit 0 ) > hasuserpw.h
rm -f tryuserpw.o tryuserpw
./compile checkpassword.c
cat warn-auto.sh choose.sh \
| sed s}HOME}"`head -1 conf-home`"}g \
> choose
chmod 755 choose
./compile chkshsgr.c
./load chkshsgr
./chkshsgr || ( cat warn-shsgr; exit 1 )
./choose clr tryshsgr hasshsgr.h1 hasshsgr.h2 > hasshsgr.h
./compile prot.c
( cat warn-auto.sh; \
echo 'main="$1"; shift'; \
echo 'rm -f "$main"'; \
echo 'ar cr "$main" ${1+"$@"}'; \
case "`cat systype`" in \
sunos-5.*) ;; \
unix_sv*) ;; \
irix64-*) ;; \
irix-*) ;; \
dgux-*) ;; \
hp-ux-*) ;; \
sco*) ;; \
*) echo 'ranlib "$main"' ;; \
esac \
) > makelib
chmod 755 makelib
./compile alloc.c
./compile alloc_re.c
./compile buffer.c
./compile buffer_2.c
./compile buffer_copy.c
./compile buffer_get.c
./compile buffer_put.c
./compile env.c
./compile error.c
./compile error_str.c
./compile open_read.c
./compile open_trunc.c
./compile pathexec_env.c
./compile pathexec_run.c
./compile stralloc_cat.c
./compile stralloc_catb.c
./compile stralloc_cats.c
./compile stralloc_eady.c
./compile stralloc_opyb.c
./compile stralloc_opys.c
./compile stralloc_pend.c
./compile strerr_die.c
./compile strerr_sys.c
./makelib unix.a alloc.o alloc_re.o buffer.o buffer_2.o \
buffer_copy.o buffer_get.o buffer_put.o env.o error.o \
error_str.o open_read.o open_trunc.o pathexec_env.o \
pathexec_run.o prot.o stralloc_cat.o stralloc_catb.o \
stralloc_cats.o stralloc_eady.o stralloc_opyb.o \
stralloc_opys.o stralloc_pend.o strerr_die.o strerr_sys.o
./compile byte_copy.c
./compile byte_cr.c
./compile byte_diff.c
./compile str_chr.c
./compile str_len.c
./compile str_start.c
./makelib byte.a byte_copy.o byte_cr.o byte_diff.o \
str_chr.o str_len.o str_start.o
( ( ./compile tryshadow.c && \
./load tryshadow -lshadow ) >/dev/null 2>&1 \
&& echo -lshadow || exit 0 ) > shadow.lib
rm -f tryshadow.o tryshadow
( ( ./compile trycrypt.c && \
./load trycrypt -lcrypt ) >/dev/null 2>&1 \
&& echo -lcrypt || exit 0 ) > crypt.lib
rm -f trycrypt.o trycrypt
./load checkpassword prot.o unix.a byte.a  `cat \
shadow.lib` `cat crypt.lib` `cat s.lib`
checkpassword.o(.text+0xfa): In function `main':
: undefined reference to `errno'
checkpassword.o(.text+0x243): In function `main':
: undefined reference to `errno'
checkpassword.o(.text+0x265): In function `main':
: undefined reference to `errno'
unix.a(pathexec_run.o)(.text+0xf6): In function `pathexec_run':
: undefined reference to `errno'
unix.a(pathexec_run.o)(.text+0x13a): In function `pathexec_run':
: undefined reference to `errno'
unix.a(alloc.o)(.text+0x48): more undefined references to `errno' follow
collect2: ld returned 1 exit status
make: *** [checkpassword] Error 1
[root@biglong checkpassword-0.90]# make setup check
./load checkpassword prot.o unix.a byte.a  `cat \
shadow.lib` `cat crypt.lib` `cat s.lib`
checkpassword.o(.text+0xfa): In function `main':
: undefined reference to `errno'
checkpassword.o(.text+0x243): In function `main':
: undefined reference to `errno'
checkpassword.o(.text+0x265): In function `main':
: undefined reference to `errno'
unix.a(pathexec_run.o)(.text+0xf6): In function `pathexec_run':
: undefined reference to `errno'
unix.a(pathexec_run.o)(.text+0x13a): In function `pathexec_run':
: undefined reference to `errno'
unix.a(alloc.o)(.text+0x48): more undefined references to `errno' follow
collect2: ld returned 1 exit status
make: *** [checkpassword] Error 1
就报了错,

然后cmd5checkpw-0.22
[root@biglong src]# cd cmd5checkpw-0.22
[root@biglong cmd5checkpw-0.22]# make
gcc -c -g -Wall -O3   -c -o main.o main.c
main.c:60: warning: return type of `main' is not `int'
gcc -c -g -Wall -O3   -c -o md5c.o md5c.c
gcc -c -g -Wall -O3   -c -o hmac_md5.o hmac_md5.c
gcc -g -o cmd5checkpw main.o md5c.o hmac_md5.o
[root@biglong cmd5checkpw-0.22]# make install
cp cmd5checkpw /bin/ ; cp cmd5checkpw.8 /usr/man/man8/
cp: cannot create regular file `/usr/man/man8/cmd5checkpw.8': No such file or directory
make: *** [install] Error 1
接着错

再来ucspi-tcp-0.88
[root@biglong src]# cd ucspi-tcp-0.88
[root@biglong ucspi-tcp-0.88]# make
( cat warn-auto.sh; \
echo 'main="$1"; shift'; \
echo exec "`head -1 conf-ld`" \
'-o "$main" "$main".o ${1+"$@"}' \
) > load
chmod 755 load
( cat warn-auto.sh; \
echo exec "`head -1 conf-cc`" '-c ${1+"$@"}' \
) > compile
chmod 755 compile
cat warn-auto.sh choose.sh \
| sed s}HOME}"`head -1 conf-home`"}g \
> choose
chmod 755 choose
./choose clr trypoll iopause.h1 iopause.h2 > iopause.h
./choose clr tryulong64 uint64.h1 uint64.h2 > uint64.h
./compile tcpserver.c
( ( ./compile tryulong32.c && ./load tryulong32 && \
./tryulong32 ) >/dev/null 2>&1 \
&& cat uint32.h2 || cat uint32.h1 ) > uint32.h
rm -f tryulong32.o tryulong32
./compile rules.c
./compile remoteinfo.c
./compile timeoutconn.c
( cat warn-auto.sh; \
echo CC=\'`head -1 conf-cc`\'; \
echo LD=\'`head -1 conf-ld`\'; \
cat find-systype.sh; \
) | sh > systype
( cat warn-auto.sh; \
echo 'main="$1"; shift'; \
echo 'rm -f "$main"'; \
echo 'ar cr "$main" ${1+"$@"}'; \
case "`cat systype`" in \
sunos-5.*) ;; \
unix_sv*) ;; \
irix64-*) ;; \
irix-*) ;; \
dgux-*) ;; \
hp-ux-*) ;; \
sco*) ;; \
*) echo 'ranlib "$main"' ;; \
esac \
) > makelib
chmod 755 makelib
./compile cdb.c
./compile cdb_hash.c
./compile cdb_make.c
./makelib cdb.a cdb.o cdb_hash.o cdb_make.o
./compile dns_dfd.c
./compile dns_domain.c
./compile dns_dtda.c
./compile dns_ip.c
./compile dns_ipq.c
./compile dns_name.c
./compile dns_nd.c
./compile dns_packet.c
./compile dns_random.c
./compile dns_rcip.c
./compile dns_rcrw.c
./compile dns_resolve.c
./compile dns_sortip.c
./compile dns_transmit.c
./compile dns_txt.c
./makelib dns.a dns_dfd.o dns_domain.o dns_dtda.o dns_ip.o \
dns_ipq.o dns_name.o dns_nd.o dns_packet.o dns_random.o \
dns_rcip.o dns_rcrw.o dns_resolve.o dns_sortip.o \
dns_transmit.o dns_txt.o
./choose c trysysel select.h1 select.h2 > select.h
./compile iopause.c
./compile tai_pack.c
./compile taia_add.c
./compile taia_approx.c
./compile taia_frac.c
./compile taia_less.c
./compile taia_now.c
./compile taia_pack.c
./compile taia_sub.c
./compile taia_uint.c
./makelib time.a iopause.o tai_pack.o taia_add.o \
taia_approx.o taia_frac.o taia_less.o taia_now.o \
taia_pack.o taia_sub.o taia_uint.o
./compile alloc.c
./compile alloc_re.c
./compile buffer.c
./compile buffer_0.c
./compile buffer_1.c
./compile buffer_2.c
./compile buffer_copy.c
./compile buffer_get.c
./compile buffer_put.c
./compile env.c
./compile error.c
./compile error_str.c
./compile fd_copy.c
./compile fd_move.c
./compile getln.c
./compile getln2.c
./compile ndelay_off.c
./compile ndelay_on.c
./compile open_read.c
./compile open_trunc.c
./compile open_write.c
./compile openreadclose.c
./compile pathexec_env.c
./compile pathexec_run.c
./compile chkshsgr.c
./load chkshsgr
./chkshsgr || ( cat warn-shsgr; exit 1 )
./choose clr tryshsgr hasshsgr.h1 hasshsgr.h2 > hasshsgr.h
./compile prot.c
./compile readclose.c
./compile seek_set.c
./compile sgetopt.c
./compile sig.c
./choose cl trysgprm hassgprm.h1 hassgprm.h2 > hassgprm.h
./compile sig_block.c
./choose cl trysgact hassgact.h1 hassgact.h2 > hassgact.h
./compile sig_catch.c
./compile sig_pause.c
./compile socket_accept.c
./compile socket_bind.c
./compile socket_conn.c
./compile socket_delay.c
./compile socket_listen.c
./compile socket_local.c
./compile socket_opts.c
./compile socket_remote.c
./compile socket_tcp.c
./compile socket_udp.c
./compile stralloc_cat.c
./compile stralloc_catb.c
./compile stralloc_cats.c
./compile stralloc_copy.c
./compile stralloc_eady.c
./compile stralloc_opyb.c
./compile stralloc_opys.c
./compile stralloc_pend.c
./compile strerr_die.c
./compile strerr_sys.c
./compile subgetopt.c
./choose cl trywaitp haswaitp.h1 haswaitp.h2 > haswaitp.h
./compile wait_nohang.c
./compile wait_pid.c
./makelib unix.a alloc.o alloc_re.o buffer.o buffer_0.o \
buffer_1.o buffer_2.o buffer_copy.o buffer_get.o \
buffer_put.o env.o error.o error_str.o fd_copy.o fd_move.o \
getln.o getln2.o ndelay_off.o ndelay_on.o open_read.o \
open_trunc.o open_write.o openreadclose.o pathexec_env.o \
pathexec_run.o prot.o readclose.o seek_set.o sgetopt.o \
sig.o sig_block.o sig_catch.o sig_pause.o socket_accept.o \
socket_bind.o socket_conn.o socket_delay.o socket_listen.o \
socket_local.o socket_opts.o socket_remote.o socket_tcp.o \
socket_udp.o stralloc_cat.o stralloc_catb.o stralloc_cats.o \
stralloc_copy.o stralloc_eady.o stralloc_opyb.o \
stralloc_opys.o stralloc_pend.o strerr_die.o strerr_sys.o \
subgetopt.o wait_nohang.o wait_pid.o
./compile byte_chr.c
./compile byte_copy.c
./compile byte_cr.c
./compile byte_diff.c
./compile byte_rchr.c
./compile byte_zero.c
./compile case_diffb.c
./compile case_diffs.c
./compile fmt_ulong.c
./compile ip4_fmt.c
./compile ip4_scan.c
./compile scan_ulong.c
./compile str_chr.c
./compile str_diff.c
./compile str_len.c
./compile str_start.c
./compile uint16_pack.c
./compile uint16_unpack.c
./compile uint32_pack.c
./compile uint32_unpack.c
./makelib byte.a byte_chr.o byte_copy.o byte_cr.o \
byte_diff.o byte_rchr.o byte_zero.o case_diffb.o \
case_diffs.o fmt_ulong.o ip4_fmt.o ip4_scan.o scan_ulong.o \
str_chr.o str_diff.o str_len.o str_start.o uint16_pack.o \
uint16_unpack.o uint32_pack.o uint32_unpack.o
( ( ./compile trylsock.c && \
./load trylsock -lsocket -lnsl ) >/dev/null 2>&1 \
&& echo -lsocket -lnsl || exit 0 ) > socket.lib
rm -f trylsock.o trylsock
./load tcpserver rules.o remoteinfo.o timeoutconn.o cdb.a \
dns.a time.a unix.a byte.a  `cat socket.lib`
tcpserver.o(.text+0x55f): In function `doit':
: undefined reference to `errno'
remoteinfo.o(.text+0x63): In function `mywrite':
: undefined reference to `errno'
remoteinfo.o(.text+0xe7): In function `myread':
: undefined reference to `errno'
timeoutconn.o(.text+0x41): In function `timeoutconn':
: undefined reference to `errno'
timeoutconn.o(.text+0xc7): In function `timeoutconn':
: undefined reference to `errno'
cdb.a(cdb.o)(.text+0xce): more undefined references to `errno' follow
collect2: ld returned 1 exit status
make: *** [tcpserver] Error 1
[root@biglong ucspi-tcp-0.88]# make setup check
./load tcpserver rules.o remoteinfo.o timeoutconn.o cdb.a \
dns.a time.a unix.a byte.a  `cat socket.lib`
tcpserver.o(.text+0x55f): In function `doit':
: undefined reference to `errno'
remoteinfo.o(.text+0x63): In function `mywrite':
: undefined reference to `errno'
remoteinfo.o(.text+0xe7): In function `myread':
: undefined reference to `errno'
timeoutconn.o(.text+0x41): In function `timeoutconn':
: undefined reference to `errno'
timeoutconn.o(.text+0xc7): In function `timeoutconn':
: undefined reference to `errno'
cdb.a(cdb.o)(.text+0xce): more undefined references to `errno' follow
collect2: ld returned 1 exit status
make: *** [tcpserver] Error 1
也是错,

呵呵,到装QMAIL的时候问题就更大了,现在MAKE SETUP CHECK报错,[root@biglong qmail-1.03]# make setup check
./load auto-str substdio.a error.a str.a
substdio.a(substdo.o)(.text+0x43): In function `allwrite':
: undefined reference to `errno'
collect2: ld returned 1 exit status
make: *** [auto-str] Error 1

然后呢,按照文章上说的,./config-fast.sh sss.com的时候,居然告诉我没有属性

[root@biglong qmail-1.03]# ./config-fast.sh sss.com
-bash: ./config-fast.sh: Permission denied


这个教程上没有说,我是瞎来的。没办法,我就改他的属性,呵呵,
[root@biglong qmail-1.03]# chmod 777 config-fast.sh
[root@biglong qmail-1.03]# ll config-fast.sh
-rwxrwxrwx    1 root     bin           973 Jun 15  1998 config-fast.sh
[root@biglong qmail-1.03]# ./config-fast.sh sss.net
Your fully qualified host name is sss.net.
Putting sss.net into control/me...
./config-fast.sh: line 5: QMAIL/control/me: No such file or directory
chmod: failed to get attributes of `QMAIL/control/me': No such file or directory
Putting sss.net into control/defaultdomain...
./config-fast.sh: line 11: QMAIL/control/defaultdomain: No such file or directory
chmod: failed to get attributes of `QMAIL/control/defaultdomain': No such file or directory
Putting sss.net into control/plusdomain...
./config-fast.sh: line 18: QMAIL/control/plusdomain: No such file or directory
chmod: failed to get attributes of `QMAIL/control/plusdomain': No such file or directory
Putting sss.net into control/locals...
./config-fast.sh: line 23: QMAIL/control/locals: No such file or directory
chmod: failed to get attributes of `QMAIL/control/locals': No such file or directory
Putting sss.net into control/rcpthosts...
./config-fast.sh: line 27: QMAIL/control/rcpthosts: No such file or directory
chmod: failed to get attributes of `QMAIL/control/rcpthosts': No such file or directory
Now qmail will refuse to accept SMTP messages except to sss.net.
Make sure to change rcpthosts if you add hosts to locals or virtualdomains!
然后就报了上面的错,这明显是。SH文件里的SHELL写的和我用的目录不对,所以,请各位大大看看,上面这些是什么错误呢!?怎么样才能改呢!?最重要的是对于我们菜鸟来说发生了这种情况怎么办呢!?尤其是打包的时候报错了,该怎么去分析他呢!?说真的报错的时候有一种世界末日的感觉!我找过论坛上的文章了,呵呵,没有对这方面有阐述的,谢谢各位大大,鞠躬了,谢谢!!!
 楼主| 发表于 2004-7-7 20:06:59 | 显示全部楼层
老大老大,在那里,一二三四五,等的好辛苦
发表于 2004-7-7 20:19:58 | 显示全部楼层
编译工具都装齐了没?没装个qmail。看看其他的兄弟能帮你不!
 楼主| 发表于 2004-7-7 20:25:12 | 显示全部楼层
???什么呀,编译工具肯定是齐的,我在安装系统的时候把所有的编译工具包都安装了,除非有什么其它的工具我不知道的,只要是在REDHAT9.0上的有的我都装了,我想应该够了!至于老大说的,没装个QMAIL!?我装的就是QMAIL呀,呵呵,郁闷的很,一天都出错!唉!
 楼主| 发表于 2004-7-8 10:35:50 | 显示全部楼层
各位大大,顶一下吧!难道大家在安装QMAIL的时候都没有碰到过类似的问题吗!?
 楼主| 发表于 2004-7-9 12:47:56 | 显示全部楼层
大大们,给点回复吧!谢谢了!
发表于 2004-7-10 20:27:00 | 显示全部楼层
http://www.linuxsir.cn/forum.php?mod=viewthread&tid=92059

根据里面说的包下载再重新编译一次,都没打补丁
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表