Berend De Schouwer
1999-Dec-14 14:02 UTC
1.2pre17 fails to compile on RedHat 4.2/i386 (libc5)
Here goes: ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-tcp-wrappers Compiles just about everything until: gcc -O2 -m486 -fno-strength-reduce -Wall -DETCDIR=\"/etc/ssh\" -DSSH_PROGRAM=\"/usr/bin/ssh\" -DSSH_ASKPASS_DEFAULT=\"/usr/libexec/ssh/ssh-askpass\" -DHAVE_CONFIG_H -c ssh.c -o ssh.o ssh.c: In function `main': ssh.c:751: warning: implicit declaration of function `daemon' gcc -o ssh ssh.o sshconnect.o log-client.o readconf.o clientloop.o libssh.a -lpam -ldl -lz -lcrypto -lssl -lcrypto -lbsd gcc -O2 -m486 -fno-strength-reduce -Wall -DETCDIR=\"/etc/ssh\" -DSSH_PROGRAM=\"/usr/bin/ssh\" -DSSH_ASKPASS_DEFAULT=\"/usr/libexec/ssh/ssh-askpass\" -DHAVE_CONFIG_H -c sshd.c -o sshd.o sshd.c:16: poll.h: No such file or directory make: *** [sshd.o] Error 1 Bad exit status from /var/tmp/rpm-tmp.67018 (%build) The following is me rambling on and trying quick fixes: In later versions (glibc), daemon is defined in unistd.h as: unistd.h:extern int daemon __P ((int __nochdir, int __noclose)); Notes, configure DOES check for daemon: checking for daemon... yes If I create this manually, it seems to compile. And poll.h just includes sys/poll.h which defines struct pollfd, and the functions: extern int __poll __P ((struct pollfd *__fds, unsigned long int __nfds, int __timeout)); extern int poll __P ((struct pollfd *__fds, unsigned long int __nfds, int __timeout)); If I copy in a poll.h, I get (obviously): gcc -g -O2 -Wall -DETCDIR=\"/etc/ssh\" -DSSH_PROGRAM=\"/usr/bin/ssh\" -DSSH_ASKPASS_DEFAULT=\"/usr/libexec/ssh/ssh-askpass\" -DHAVE_CONFIG_H -c sshd.c -o sshd.o sshd.c: In function `do_fake_authloop': sshd.c:1647: warning: unused variable `type' sshd.c: In function `do_child': sshd.c:2490: warning: initialization from incompatible pointer type gcc -o sshd sshd.o auth-rhosts.o auth-passwd.o auth-rsa.o auth-rh-rsa.o pty.o log-server.o login.o servconf.o serverloop.o bsd-login.o md5crypt.o libssh.a -lpam -ldl -lz -lcrypto -lssl -lcrypto -lbsd -lwrap sshd.o: In function `main': /usr/local/src/openssh-1.2pre17/sshd.c:700: undefined reference to `poll' make: *** [sshd] Error 1 -- Kind regards, Berend -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-Berend De Schouwer, +27-11-712-1435, UCS