Dear sirs, I tried to compile openssh-5.0p1 on a IRIX machine with gcc. "/sbin/uname -a" gives: IRIX o2 6.5 07202013 IP32 mips and "/sbin/uname -R" gives: 6.5 6.5.30f "gcc -v" gives: Reading specs from /usr/freeware/lib/gcc-lib/mips-sgi-irix6.5/3.3/specs Configured with: ../configure --prefix=/usr/freeware --enable-version-specific-runtime-libs --disable-shared --enable-threads --enable-haifa --enable-libgcj --disable-c-mbchar Thread model: single gcc version 3.3 Talking about OpenSSL libraries and headers, "./configure" says that: checking OpenSSL header version... 90807f (OpenSSL 0.9.8g 19 Oct 2007) checking OpenSSL library version... 90807f (OpenSSL 0.9.8g 19 Oct 2007) "./configure" complains about <sys/stropts.h>: [...] checking sys/stropts.h usability... no checking sys/stropts.h presence... yes configure: WARNING: sys/stropts.h: present but cannot be compiled configure: WARNING: sys/stropts.h: check for missing prerequisite headers? configure: WARNING: sys/stropts.h: see the Autoconf documentation configure: WARNING: sys/stropts.h: section "Present But Cannot Be Compiled" configure: WARNING: sys/stropts.h: proceeding with the preprocessor's result configure: WARNING: sys/stropts.h: in the future, the compiler will take precedence configure: WARNING: ## ------------------------------------------- ## configure: WARNING: ## Report this to openssh-unix-dev at mindrot.org ## configure: WARNING: ## ------------------------------------------- ## checking for sys/stropts.h... yes [...] Nevertheless a "Makefile" and "config.status" is still produced. Issuing a "make" the compilation stops at [...] gcc -g -O2 -Wall -Wpointer-arith -Wuninitialized -Wsign-compare -std=gnu99 -I. -I.. -I. -I./.. -I/usr/local/ssl/include -DHAVE_CONFIG_H -c bsd-openpty.c saying that: In file included from bsd-openpty.c:61: /usr/include/sys/stropts.h:237: error: parse error before "t_uscalar_t" /usr/include/sys/stropts.h:261: error: parse error before "t_uscalar_t" /usr/include/sys/stropts.h:267: error: parse error before '}' token make[1]: *** [bsd-openpty.o] Error 1 make[1]: Leaving directory `/mnt/d0/software/openssh-5.0p1/openbsd-compat' make: *** [openbsd-compat/libopenbsd-compat.a] Error 2 But an IRIX-based system has <stropts.h>, which in turns includes <sys/stropts.h>. So I made a "make distclean" and in: - configure - configure.ac - openbsd-compat/bsd-openpty.c - config.h.in I changed all the occurrences of the string "sys/stropts.h" to a straight "stropts.h" Something like this, I mean: *** bsd-openpty.c Mon Apr 14 09:06:12 2008 --- bsd-openpty.c.orig Mon Apr 14 09:06:50 2008 *************** *** 58,64 **** # include <pty.h> #endif #if defined(HAVE_DEV_PTMX) && defined(HAVE_SYS_STROPTS_H) ! # include <stropts.h> #endif #include <signal.h> --- 58,64 ---- # include <pty.h> #endif #if defined(HAVE_DEV_PTMX) && defined(HAVE_SYS_STROPTS_H) ! # include <sys/stropts.h> #endif #include <signal.h> "configure" still complains about "present but not compiled" but I got through "make" with a successful compilation and working executables which I'm happily using right now. Conclusions: Maybe could any of that be useful for you developers? I have just a question: am I putting something nasty in my sshd daemon? Please, feel free to get in touch with me for any question regarding this topic. I realize IRIX is not a very common OS (alas, I'd say) but there are few of us out of there still using IRIX with such a delight :) Best regards. -- Roberto Vadori - AMET Italy "This paper gives wrong solutions to trivial problems. The basic error, however, is not new". Clifford Truesdell, Math. Rev., 12, p 561.