Bug 5201 - Compilation bug of GSI OpenSSH on AIX 5.2 with xlc
: Compilation bug of GSI OpenSSH on AIX 5.2 with xlc
Status: RESOLVED FIXED
: GSI-OpenSSH
GSI-OpenSSH
: 4.0.4
: Other AIX
: P3 normal
: ---
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2007-04-11 10:25 by
Modified: 2007-09-14 11:51 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2007-04-11 10:25:53
Hi Jim,

We're adding support for AIX to the VDT. At the moment, we're working
on AIX 5.2, then we'll add 5.3 later.

At this point, we're mostly concerned about Globus building, and it
does that just fine. But the GSI OpenSSH build fails for what seems
like trivial reasons.

http://nmi-s001.cs.wisc.edu/nmi/index.php?page=results/viewFile&file_host=nmi-s001.cs.wisc.edu&file=%2Fnmi%2Frun%2Fcat_nmi-s001.cs.wisc.edu_1176236223_1212%2Fuserdir%2Fppc_aix_5.2%2Fbuild.out&refresh=0&no_header=1&view=1

It boils down to this:

"hostfile.c", line 92.35: 1506-280 (E) Function argument assignment
between types "unsigned char*" and "char*" is not allowed.
"hostfile.c", line 130.31: 1506-280 (E) Function argument assignment
between types "const unsigned char*" and "const char*" is not allowed.
"hostfile.c", line 131.30: 1506-280 (E) Function argument assignment
between types "unsigned char*" and "char*" is not allowed.
"hostfile.c", line 134.24: 1506-280 (E) Function argument assignment
between types "const unsigned char*" and "char*" is not allowed.
"hostfile.c", line 135.24: 1506-280 (E) Function argument assignment
between types "const unsigned char*" and "char*" is not allowed.

I'm not sure what the fundamental problem is, but it looks like a few
casts might solve the problem.

We don't need GSI OpenSSH immediately, so this is not a high priority
problem for us. But you might want to look at it for the next release.

Thanks!
-alain
------- Comment #1 From 2007-04-11 10:35:20 -------
Looks like the fatal error is actually in kex.c on 32 versus 64 bit type
conflicts.  The GT 4.0.4 binary release uses vendorcc32 on this platform.  This
error is when using vendorcc64dbg instead.

/prereq/vacpp-6/bin/xlc_r -q64 -g -qfullpath -D_ALL_SOURCE -q64 -D_ALL_SOURCE 
-I. -I. -I/prereq/tcp_wrappers-7.6/include
-I/home/condor/execute/dir_33492/userdir/zlib_install/include
-I/home/condor/execute/dir_33492/userdir/install/include
-I/home/condor/execute/dir_33492/userdir/install/include/vendorcc64dbg
-I/home/condor/execute/dir_33492/userdir/install/include/vendorcc64dbg
-D_PATH_PRIVSEP_CHROOT_DIR=\"/var/empty\" -DHAVE_CONFIG_H -c kex.c
"dispatch.h", line 39.37: 1506-112 (E) Duplicate type qualifier "volatile"
ignored.
"/usr/include/unistd.h", line 171.17: 1506-343 (S) Redeclaration of lseek64
differs from previous declaration on line 169 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 171.17: 1506-050 (I) Return type "long long" in
redeclaration is not compatible with the previous return type "long".
"/usr/include/unistd.h", line 171.17: 1506-377 (I) The type "long long" of
parameter 2 differs from the previous type "long".
"/usr/include/sys/lockf.h", line 64.20: 1506-343 (S) Redeclaration of lockf64
differs from previous declaration on line 62 of "/usr/include/sys/lockf.h".
"/usr/include/sys/lockf.h", line 64.20: 1506-377 (I) The type "long long" of
parameter 3 differs from the previous type "long".
"/usr/include/unistd.h", line 777.33: 1506-343 (S) Redeclaration of ftruncate64
differs from previous declaration on line 775 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 777.33: 1506-377 (I) The type "long long" of
parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 812.33: 1506-343 (S) Redeclaration of truncate64
differs from previous declaration on line 810 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 812.33: 1506-377 (I) The type "long long" of
parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 829.33: 1506-343 (S) Redeclaration of pread64
differs from previous declaration on line 826 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 829.33: 1506-377 (I) The type "long long" of
parameter 4 differs from the previous type "long".
"/usr/include/unistd.h", line 830.33: 1506-343 (S) Redeclaration of pwrite64
differs from previous declaration on line 827 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 830.33: 1506-377 (I) The type "long long" of
parameter 4 differs from the previous type "long".
"/usr/include/unistd.h", line 897.25: 1506-343 (S) Redeclaration of fclear64
differs from previous declaration on line 894 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 897.25: 1506-050 (I) Return type "long long" in
redeclaration is not compatible with the previous return type "long".
"/usr/include/unistd.h", line 897.25: 1506-377 (I) The type "long long" of
parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 898.25: 1506-343 (S) Redeclaration of
fsync_range64 differs from previous declaration on line 895 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 898.25: 1506-377 (I) The type "long long" of
parameter 3 differs from the previous type "long".
make: *** [kex.o] Error 1
------- Comment #2 From 2007-04-11 11:31:31 -------
Since it builds OK using vendorcc32, I don't plan to fix this.  I prefer to
minimize deviations from the OpenSSH source.
------- Comment #3 From 2007-07-31 15:45:58 -------
*** Bug 5465 has been marked as a duplicate of this bug. ***
------- Comment #4 From 2007-07-31 16:25:09 -------
The platform notes at
http://www.globus.org/toolkit/docs/4.0/admin/docbook/ch03.html#s-platform-aix
should be updated with the vendorcc32dbg work around for building gsi-openssh
on AIX.
------- Comment #5 From 2007-08-01 15:38:31 -------
Jim and Charles,
I was able to downloaded OpenSSH 4.6p1 and configured and built a 64 bit
version without any errors for  both the xlc and xlc_r compilers on AIX 5.3. 
So the problem does not occur with the base OpenSSH 4.6p1 source but with the
modifications. 
------- Comment #6 From 2007-09-14 10:43:37 -------
I've committed a fix:
http://www.globus.org/mail_archive/gsi-openssh-commit/2007/09/msg00021.html

I plan to include it in a GSI-OpenSSH 4.1 release today.
------- Comment #7 From 2007-09-14 11:51:51 -------
The new release at 
ftp://ftp.globus.org/pub/gsissh/GPT/4.1/gsi_openssh_bundle-4.1-src.tar.gz
should resolve this issue.

If the problem persists, please re-open this bug.