[Note: CC to openssh-unix-dev added] "Ph. Marek" wrote:> I found you mail > http://marc.theaimsgroup.com/?l=openssh-unix-dev&m=104970105603800&w=2 > where you claim that you've compiled openssh in AIX.That is correct, AIX 4.2.1, 4.3.3 and 5.1.> Not my situation is as follows: > openssh-3.6.1p1 > AIX 4.2 > gcc > /usr/bin/ld (AIX-binary) > > and upon linking of ssh I get "undefined symbol: .__inet_ntoa" and the same > with inet_aton, followed by "use -bloadmap". > If I use -bloadmap I get "cannot find or open libgcc.a" - which is available, > and I even tried to give its path via -L to the linker. > > Do you have any suggestions?inet_ntoa is part of libc.a (on AIX 4.2.1 anyway). The man page contains some conflicting information, though: "All applications containing the inet_ntoa subroutine must be compiled with _BSD set to a specific value. Acceptable values are 43 and 44. In addition, all socket applications must include the BSD libbsd.a library." I would suggest: a) Adding -lbsd to CFLAGS b) Installing all of the bos.adt filesets from your distribution media. After each you must run "make distclean" re-run "./configure". If those two things don't work please send me the config.h and config.log files generated by running "configure" and the output of "oslevel". -- Darren Tucker (dtucker at zip.com.au) GPG Fingerprint D9A3 86E9 7EEE AF4B B2D4 37C9 C982 80C7 8FF4 FA69 Good judgement comes with experience. Unfortunately, the experience usually comes from bad judgement.
"Ph. Marek" wrote:> > If those two things don't work please send me the config.h and > > config.log files generated by running "configure" and the output of > > "oslevel". > oslevel: 4.2.1.0 > > config.h is attached.I compared your vanilla config.h to one generated on my working machine. The main differences I can see are: You have the following headers which I don't have: <sys/bitypes.h> <sys/cdefs.h> My machine has this that yours doesn't: <sys/stat.h> (this is owned by the bos.adt.include fileset). Also vaguely recall having linker problems with 4.2.1.0. I suggest: a) Upgrading the bos.rte.bind_cmds fileset [1] and possibly the bos.adt filesets. b) Finding and renaming those extra headers c) Reinstalling the bos.adt.* filesets. -Daz. [1] ftp://service.software.ibm.com/aix/fixes/v4/os/bos.rte.bind_cmds.4.2.1.11.bff Here are my relevant fileset levels: $ lslpp -l |egrep 'bos\.adt|bind_cmd' bos.adt.base 4.2.1.10 COMMITTED Base Application Development bos.adt.debug 4.2.1.0 COMMITTED Base Application Development bos.adt.graphics 4.2.1.4 COMMITTED Base Application Development bos.adt.include 4.2.1.25 COMMITTED Base Application Development bos.adt.lib 4.2.1.2 COMMITTED Base Application Development bos.adt.libm 4.2.1.1 COMMITTED Base Application Development bos.adt.prof 4.2.1.26 COMMITTED Base Profiling Support bos.adt.prt_tools 4.2.0.0 COMMITTED Printer Support Development bos.adt.samples 4.2.1.0 COMMITTED Base Operating System Samples bos.adt.sccs 4.2.0.0 COMMITTED SCCS Application Development bos.adt.syscalls 4.2.1.7 COMMITTED System Calls Application bos.adt.utils 4.2.1.2 COMMITTED Base Application Development bos.rte.bind_cmds 4.2.1.11 COMMITTED Binder and Loader Commands bos.adt.data 4.2.0.0 COMMITTED Base Application Development $ diff -b -B -d -u working-config.h broken-config.h [snip] /* Define to 1 if you have the <sys/bitypes.h> header file. */ -/* #undef HAVE_SYS_BITYPES_H */ +#define HAVE_SYS_BITYPES_H 1 /* Define to 1 if you have the <sys/bsdtty.h> header file. */ /* #undef HAVE_SYS_BSDTTY_H */ /* Define to 1 if you have the <sys/cdefs.h> header file. */ -/* #undef HAVE_SYS_CDEFS_H */ +#define HAVE_SYS_CDEFS_H 1 /* Define to 1 if you have the <sys/mman.h> header file. */ #define HAVE_SYS_MMAN_H 1 @@ -803,7 +803,7 @@ #define HAVE_SYS_SELECT_H 1 /* Define to 1 if you have the <sys/stat.h> header file. */ -#define HAVE_SYS_STAT_H 1 +/* #undef HAVE_SYS_STAT_H */ /* Define to 1 if you have the <sys/stropts.h> header file. */ #define HAVE_SYS_STROPTS_H 1 -- Darren Tucker (dtucker at zip.com.au) GPG Fingerprint D9A3 86E9 7EEE AF4B B2D4 37C9 C982 80C7 8FF4 FA69 Good judgement comes with experience. Unfortunately, the experience usually comes from bad judgement.
> The only problem I've had with gcc v3 is Perl. 2.95 should be fine for > OpenSSH.I found the problem. I've got some files in /usr/local/include - eg an arpa/inet.h, which had a #define inet_ntoa __inet_ntoa in it. After using CFLAGS=-I/usr/include ./configure ... to move /usr/include to a higher priority it compiled without problem. Thank you for your help! Regards, Phil