红联Linux门户
Linux帮助

装wu-ftpd时候make出错!?

发布时间:2008-03-08 14:47:31来源:红联作者:救命啊
我在VMware里装了Red Hat Enterprise Linux 5
在装wu-ftpd-2.6.2时候 make出错 有人知道什么原因吗 我贴出错误信息
在附件里[attach]6648[/attach]
文章评论

共有 3 条评论

  1. 救命啊 于 2008-03-08 17:13:30发表:

    成功解决,十分感谢你的帮助...发现WU-FTPD是够烂的,连这样的BUG都有...

  2. Prospect 于 2008-03-08 15:29:50发表:

    在网上得到的解答
    是ftpcmd.c中 "="的缘故
    这时候可以通过在目录wu-ftpd-2.6.2/src/下使用以下代码进行修正。
    cp ftpcmd.y ftpcmd.y.orig
    sed -e "s/=[ "$'\t'"][ "$'\t'"]*{/'=' {/" ftpcmd.y.orig > ftpcmd.y


    然后我再进行安装,信息如下,
    [root@localhost wu-ftpd-2.6.2]# cd src
    [root@localhost src]# cp ftpcmd.y ftpcmd.y.orig
    [root@localhost src]# sed -e "s/=[ "$'\t'"][ "$'\t'"]*{/'=' {/" ftpcmd.y.orig > ftpcmd.y
    [root@localhost src]# cd ..
    [root@localhost wu-ftpd-2.6.2]# ./configure
    checking build system type... i686-pc-linux-gnu
    checking host system type... i686-pc-linux-gnu
    checking target system type... i686-pc-linux-gnu
    checking for gcc... gcc
    checking for C compiler default output... a.out
    checking whether the C compiler works... yes
    checking whether we are cross compiling... no
    checking for executable suffix...
    checking for object suffix... o
    checking whether we are using the GNU C compiler... yes
    checking whether gcc accepts -g... yes
    checking for POSIXized ISC... no
    checking for ranlib... ranlib
    checking for bison... bison -y
    checking for a BSD compatible install... /usr/bin/install -c
    checking for ar... ar
    checking how to run the C preprocessor... gcc -E
    checking for ANSI C header files... yes
    checking whether time.h and sys/time.h may both be included... yes
    checking if we can do hard links... yes - using ln
    checking for dirent.h... yes
    checking for regex.h... yes
    checking for shadow.h... yes
    checking for security/pam_appl.h... yes
    checking for opie.h... no
    checking for skey.h... no
    checking for syslog.h... yes
    checking for sys/syslog.h... yes
    checking for fcntl.h... yes
    checking for mntent.h... yes
    checking for stdlib.h... yes
    checking for unistd.h... yes
    checking for glob.h... yes
    checking for grp.h... yes
    checking for ndir.h... no
    checking for sys/dir.h... yes
    checking for sys/ndir.h... no
    checking for string.h... yes
    checking for vmsdir.h... no
    checking for sys/systeminfo.h... no
    checking for bsd/bsd.h... no
    checking for sys/param.h... yes
    checking for values.h... yes
    checking for limits.h... yes
    checking for sys/types.h... yes
    checking for sys/mntent.h... no
    checking for sys/mnttab.h... no
    checking for paths.h... yes
    checking for dirfd... yes
    checking for fchdir... yes
    checking for flock... yes
    checking for ftw... yes
    checking for getcwd... yes
    checking for getdtablesize... yes
    checking for pstat... no
    checking for lstat... yes
    checking for vprintf... yes
    checking for snprintf... yes
    checking for regexec... yes
    checking for regex... no
    checking for fgetspent... yes
    checking for usercmp... no
    checking for getusershell... yes
    checking for setuid... yes
    checking for vsnprintf... yes
    checking for snprintf... (cached) yes
    checking for strcasestr... yes
    checking for strdup... yes
    checking for strerror... yes
    checking for strsep... yes
    checking for strstr... yes
    checking for syslog... yes
    checking for glob... yes
    checking for strcasecmp... yes
    checking for strncasecmp... yes
    checking for sigprocmask... yes
    checking for quotactl... yes
    checking for getrlimit... yes
    checking for sysconf... yes
    checking for setsid... yes
    checking for memmove... yes
    checking for strtoul... yes
    checking for seteuid... yes
    checking for setegid... yes
    checking for crypt in -lcrypt... yes
    checking for socket in -lsocket... no
    checking for socket in -lsocket... (cached) no
    checking for connect in -lsocket... no
    checking for connect in -lsocket... (cached) no
    checking for inet_addr in -lnsl... yes
    checking for sys_siglist... yes
    checking type of qsort... void
    checking how to determine bytesize... NBBY
    checking if openlog requires 3 arguments... yes
    checking which facility openlog understands... LOG_FTP
    checking type of getmntent function... new-style
    checking if there is a ut_host field in the utmp structure... yes
    checking if there is a ut_exit.e_termination field in the utmp structure... yes
    checking if there is a pw_expire field in the pw structure... no
    checking if there is a st_blksize field in the stat structure... yes
    checking for res_query... no
    checking for res_query in -lbind... no
    checking for res_query in -lresolv... yes
    checking how to printf gr_gid... gr_gid is just a long - using %u
    checking how to printf pw_uid... uid_t is just a long - using %u
    checking how to printf an off_t... off_t is just a long - using %u
    checking how to printf a time_t... time_t is just a long - using %u
    checking for setspent in -lshadow... no
    checking for getspnam in -lshadow... no
    checking for setspent in -lc... yes
    configure: creating ./config.status
    config.status: creating Makefile
    config.status: creating src/Makefile
    config.status: creating support/Makefile
    config.status: creating util/privatepw/Makefile
    config.status: creating src/pathnames.h
    config.status: creating config.h
    config.status: config.h is unchanged
    config.status: creating src/config.h
    config.status: src/config.h is unchanged
    [root@localhost wu-ftpd-2.6.2]# make
    (cd support ; make all)
    make[1]: Entering directory `/usr/local/src/wu-ftpd-2.6.2/support'
    rm -f libsupport.a
    ar cq libsupport.a authuser.o
    ranlib libsupport.a
    make[1]: Leaving directory `/usr/local/src/wu-ftpd-2.6.2/support'
    (cd util/privatepw ; make all)
    make[1]: Entering directory `/usr/local/src/wu-ftpd-2.6.2/util/privatepw'
    make[1]: Nothing to be done for `all'.
    make[1]: Leaving directory `/usr/local/src/wu-ftpd-2.6.2/util/privatepw'
    (cd src ; make all)
    make[1]: Entering directory `/usr/local/src/wu-ftpd-2.6.2/src'
    gcc -g -O2 -I.. -I../support -c -o COPYRIGHT.o COPYRIGHT.c
    bison -y ftpcmd.y
    mv -f y.tab.c ftpcmd.c
    sh newvers.sh
    gcc -g -O2 -I.. -I../support -c -o vers.o vers.c
    gcc -g -O2 -I.. -I../support -c -o ftpd.o ftpd.c
    gcc -g -O2 -I.. -I../support -c -o ftpcmd.o ftpcmd.c
    gcc -g -O2 -I.. -I../support -c -o glob.o glob.c
    gcc -g -O2 -I.. -I../support -c -o logwtmp.o logwtmp.c
    gcc -g -O2 -I.. -I../support -c -o popen.o popen.c
    gcc -g -O2 -I.. -I../support -c -o access.o access.c
    gcc -g -O2 -I.. -I../support -c -o extensions.o extensions.c
    gcc -g -O2 -I.. -I../support -c -o realpath.o realpath.c
    gcc -g -O2 -I.. -I../support -c -o acl.o acl.c
    gcc -g -O2 -I.. -I../support -c -o private.o private.c
    gcc -g -O2 -I.. -I../support -c -o authenticate.o authenticate.c
    gcc -g -O2 -I.. -I../support -c -o conversions.o conversions.c
    gcc -g -O2 -I.. -I../support -c -o rdservers.o rdservers.c
    gcc -g -O2 -I.. -I../support -c -o paths.o paths.c
    gcc -g -O2 -I.. -I../support -c -o hostacc.o hostacc.c
    gcc -g -O2 -I.. -I../support -c -o sigfix.o sigfix.c
    gcc -g -O2 -I.. -I../support -c -o auth.o auth.c
    gcc -g -O2 -I.. -I../support -c -o routevector.o routevector.c
    gcc -g -O2 -I.. -I../support -c -o restrict.o restrict.c
    gcc -g -O2 -I.. -I../support -c -o domain.o domain.c
    gcc -g -O2 -I.. -I../support -c -o wu_fnmatch.o wu_fnmatch.c
    gcc -g -O2 -I.. -I../support -c -o timeout.o timeout.c
    gcc -g -O2 -I.. -I../support -c -o getpwnam.o getpwnam.c
    gcc -g -O2 -o ftpd COPYRIGHT.o vers.o ftpd.o ftpcmd.o glob.o logwtmp.o popen.o access.o extensions.o realpath.o acl.o private.o authenticate.o conversions.o rdservers.o paths.o hostacc.o sigfix.o auth.o routevector.o restrict.o domain.o wu_fnmatch.o timeout.o getpwnam.o -L../support -lcrypt -lnsl -lresolv -lsupport
    gcc -g -O2 -I.. -I../support -c -o ftpcount.o ftpcount.c
    gcc -g -O2 -o ftpcount COPYRIGHT.o vers.o ftpcount.o -L../support -lcrypt -lnsl -lresolv -lsupport
    gcc -g -O2 -I.. -I../support -c -o ftpshut.o ftpshut.c
    gcc -g -O2 -o ftpshut COPYRIGHT.o vers.o ftpshut.o rdservers.o -L../support -lcrypt -lnsl -lresolv -lsupport
    gcc -g -O2 -I.. -I../support -c -o ftprestart.o ftprestart.c
    gcc -g -O2 -o ftprestart COPYRIGHT.o vers.o ftprestart.o rdservers.o -L../support -lcrypt -lnsl -lresolv -lsupport
    gcc -g -O2 -I.. -I../support -c -o ckconfig.o ckconfig.c
    gcc -g -O2 -o ckconfig COPYRIGHT.o vers.o ckconfig.o rdservers.o -L../support -lcrypt -lnsl -lresolv -lsupport
    make[1]: Leaving directory `/usr/local/src/wu-ftpd-2.6.2/src'
    if [ ! -d bin ]; then mkdir bin; fi
    rm -f bin/ftpd bin/ftpshut bin/ftpcount bin/ftpwho bin/ckconfig bin/ftprestart
    ln src/ftpd bin
    ln src/ftpshut bin
    ln src/ftpcount bin
    ln src/ftpcount bin/ftpwho
    ln src/ckconfig bin
    ln src/ftprestart bin
    size bin/ftpd bin/ftpshut bin/ftpcount bin/ftpwho bin/ckconfig bin/ftprestart
    text data bss dec hex filename
    146017 10668 97248 253933 3dfed bin/ftpd
    8467 500 10276 19243 4b2b bin/ftpshut
    6523 488 12 7023 1b6f bin/ftpcount
    6523 488 12 7023 1b6f bin/ftpwho
    5632 416 8224 14272 37c0 bin/ckconfig
    6049 460 12320 18829 498d bin/ftprestart
    [root@localhost wu-ftpd-2.6.2]# make install
    (cd support ; make all)
    make[1]: Entering directory `/usr/local/src/wu-ftpd-2.6.2/support'
    rm -f libsupport.a
    ar cq libsupport.a authuser.o
    ranlib libsupport.a
    make[1]: Leaving directory `/usr/local/src/wu-ftpd-2.6.2/support'
    (cd util/privatepw ; make all)
    make[1]: Entering directory `/usr/local/src/wu-ftpd-2.6.2/util/privatepw'
    make[1]: Nothing to be done for `all'.
    make[1]: Leaving directory `/usr/local/src/wu-ftpd-2.6.2/util/privatepw'
    (cd src ; make all)
    make[1]: Entering directory `/usr/local/src/wu-ftpd-2.6.2/src'
    make[1]: Nothing to be done for `all'.
    make[1]: Leaving directory `/usr/local/src/wu-ftpd-2.6.2/src'
    if [ ! -d bin ]; then mkdir bin; fi
    rm -f bin/ftpd bin/ftpshut bin/ftpcount bin/ftpwho bin/ckconfig bin/ftprestart
    ln src/ftpd bin
    ln src/ftpshut bin
    ln src/ftpcount bin
    ln src/ftpcount bin/ftpwho
    ln src/ckconfig bin
    ln src/ftprestart bin
    size bin/ftpd bin/ftpshut bin/ftpcount bin/ftpwho bin/ckconfig bin/ftprestart
    text data bss dec hex filename
    146017 10668 97248 253933 3dfed bin/ftpd
    8467 500 10276 19243 4b2b bin/ftpshut
    6523 488 12 7023 1b6f bin/ftpcount
    6523 488 12 7023 1b6f bin/ftpwho
    5632 416 8224 14272 37c0 bin/ckconfig
    6049 460 12320 18829 498d bin/ftprestart
    installing binaries.
    /usr/bin/install -c -o bin -g bin -m 755 bin/ftpd //usr/sbin/in.ftpd
    /usr/bin/install -c -o bin -g bin -m 755 bin/ftpshut //usr/sbin/ftpshut
    /usr/bin/install -c -o bin -g bin -m 755 bin/ftpcount //usr/bin/ftpcount
    /usr/bin/install -c -o bin -g bin -m 755 bin/ftpwho //usr/bin/ftpwho
    /usr/bin/install -c -o bin -g bin -m 755 bin/ckconfig //usr/sbin/ckconfig
    /usr/bin/install -c -o bin -g bin -m 755 bin/ftprestart //usr/sbin/ftprestart
    /usr/bin/install -c -o bin -g bin -m 755 util/privatepw/privatepw //usr/sbin/privatepw
    installing manpages.
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 doc/ftpd.8 //usr/man/man8/ftpd.8
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 doc/ftpcount.1 //usr/man/man1/ftpcount.1
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 doc/ftpwho.1 //usr/man/man1/ftpwho.1
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 doc/ftpshut.8 //usr/man/man8/ftpshut.8
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 doc/ftpaccess.5 //usr/man/man5/ftpaccess.5
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 doc/ftphosts.5 //usr/man/man5/ftphosts.5
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 doc/ftpconversions.5 //usr/man/man5/ftpconversions.5
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 doc/ftpservers.5 //usr/man/man5/ftpservers.5
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 doc/xferlog.5 //usr/man/man5/xferlog.5
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 doc/ftprestart.8 //usr/man/man8/ftprestart.8
    /usr/bin/install -c -m 644 -o bin -g bin -m 644 util/privatepw/privatepw.8 //usr/man/man8/privatepw.8
    Since you didn't have a ftpaccess file, the sample has been
    installed to //etc/ftpaccess.
    You will probably want to edit it.
    Since you didn't have a ftpconversions file, the sample has been
    installed to //etc/ftpconversions.
    You will probably want to edit it.

  3. 救命啊 于 2008-03-08 15:14:46发表:

    怎么就没达人帮忙解释下吗?