Issue 27632: build on AIX fails when builddir != srcdir, more than bad path to ld_so_aix (original) (raw)

Note: - Only examined on Python 2.7, but expect the same issue (from Python 3.4.X, 3.5.X and 3.6.X based on earlier attempts to use a separate builddir

SUMMARY:

COMMENTS:

DETAILS (verbatum):

root@x064:[/data/prj/aixtools/python/Python-2.7.12]buildaix --without-computed-gotos VRMF 2.7.12.0 xlc is /usr/vacpp/bin/xlc

Skipping: def P64(X): return ( *((ptr64 *)&(X)) )

Skipping: fsid_dev = val[0] Skipping: fsid_type = val[1] Skipping: fh_dev = fh_fsid.fsid_dev Skipping: fh_type = fh_fsid.fsid_type Skipping: fh_len = fh_fid.fid_len Skipping: fh_ino = fh_fid.fid_ino Skipping: fh_gen = fh_fid.fid_gen Skipping: __NFDBITS = (sizeof(long) * 8) Skipping: __NUM_ENTRIES = (FD_SETSIZE/__NFDBITS+1) Skipping: def FD_ZERO(p): return { fd_set *__q=p; \

Skipping: NS_PER_TICK = (NS_PER_SEC/HZ) Skipping: TIMEBASE_SZ = (sizeof (struct timebasestruct)) Skipping: def ntimerisset(tvp): return ((tvp)->tv_sec || (tvp)->tv_nsec)

Skipping: def ntimerclear(tvp): return (tvp)->tv_sec = (tvp)->tv_nsec = 0

Skipping: def timerisset(tvp): return ((tvp)->tv_sec || (tvp)->tv_usec)

Skipping: def timerclear(tvp): return (tvp)->tv_sec = (tvp)->tv_usec = 0

Skipping: CLOCK_REALTIME = ((clockid_t) 9) Skipping: CLOCK_MONOTONIC = ((clockid_t) 10) Skipping: CLOCK_PROCESS_CPUTIME_ID = ((clockid_t) 11) Skipping: CLOCK_THREAD_CPUTIME_ID = ((clockid_t) 12) Skipping: _H_STDDEF = Skipping: offsetof = __offsetof Skipping: NFDBITS = __NFDBITS Skipping: s6_addr32 = s6_addr.s6_addr32 Skipping: s6_addr64 = s6_addr.s6_addr64 Skipping: s6_addr16 = s6_addr.s6_addr16 Skipping: s6_addr8 = s6_addr.s6_addr8 Skipping: s6_addr = s6_addr.s6_addr8 Skipping: INADDR_ANY = (uint32_t)0x00000000 Skipping: INADDR_BROADCAST = (uint32_t)(-1) Skipping: INADDR_UNSPEC_GROUP = (uint32_t)(-536870912) Skipping: INADDR_ALLHOSTS_GROUP = (uint32_t)(-536870911) Skipping: INADDR_ALLRTRS_GROUP = (uint32_t)(-536870910) Skipping: INADDR_MAX_LOCAL_GROUP = (uint32_t)(-536870657) Skipping: MSR_HYPERVISOR = (1152921500311879680)L Skipping: DSCR_PROP_VER0_SIZE = (offsetof(struct dscr_properties, dscr_res)) Skipping: DSCR_PROP_SIZE = (sizeof(struct dscr_properties)) Skipping: FP_IE_IMPL = (fp_ie_impl != 0) Skipping: ASR_VALID = (1LL) Skipping: SLB_PSIZE_MASK = 0x170UL Skipping: def VALID_HANDLE_SSLB(_handle): return (!((_handle) & 0x0f))

Skipping: HANDLE_CLASS_SSLB = 0x80UL Skipping: def htons(hostshort): return (unsigned short)(hostshort)

Skipping: def ntohs(netshort): return (unsigned short)(netshort)

Skipping: INADDR_LOOPBACK = (uint32_t)0x7f000001 Skipping: s6_addr32 = u6_addr.u6_addr32 Skipping: s6_addr64 = u6_addr.u6_addr64 Skipping: s6_addr16 = u6_addr.u6_addr16 Skipping: s6_addr8 = u6_addr.u6_addr8 Skipping: s6_addr = u6_addr.u6_addr8 Skipping: def HTONLL(x): return (x) = htonll((x));

Skipping: def HTONL(x): return (x) = htonl((x));

Skipping: def HTONS(x): return (x) = htons((x));

Skipping: def NTOHLL(x): return (x) = ntohll((x));

Skipping: def NTOHL(x): return (x) = ntohl((x));

Skipping: def NTOHS(x): return (x) = ntohs((x));

Skipping: def IPV6_GET_VERSION(x): return ((*((u_char *)&(x)) >> 4) & 0xf)

Skipping: def IN6_ADDR_V6_TO_V4(a): return ((struct in_addr *)&(a)->s6_addr[12])

Skipping: def satosin(sa): return ((struct sockaddr_in *)(sa))

Skipping: def sintosa(sin): return ((struct sockaddr *)(sin))

Skipping: def ifatoia(ifa): return ((struct in_ifaddr *)(ifa))

Skipping: def satosin6(sa): return ((struct sockaddr_in6 *)(sa))

Skipping: def sin6tosa(sin6): return ((struct sockaddr *)(sin6))

Skipping: def ifatoia6(ifa): return ((struct in6_ifaddr *)(ifa))

Traceback (most recent call last): File "/var/aixtools/python/Python/2.7.12.0/opt/lib/python2.7/compileall.py", line 16, in import struct File "/var/aixtools/python/Python/2.7.12.0/opt/lib/python2.7/struct.py", line 1, in from _struct import * ImportError: No module named _struct make: 1254-004 The error code from the last command is 1.

Stop. make install returned an error root@x064:[/data/prj/aixtools/python/Python-2.7.12]

DETAILS2:

root@x064:[/data/prj/aixtools/python/python-2.7.12]buildaix --without-computed-gotos VRMF 2.7.12.0 xlc is /usr/vacpp/bin/xlc + [[ 0 -eq 0 ]] + CC=xlc_r + export CC + CC=xlc_r CPPFLAGS="-I/opt/include -I/opt/buildaix/include" CFLAGS="-I/opt/include -O2 -qmaxmem=-1 -I/opt/buildaix/includes"
./configure
--prefix=/opt
--sysconfdir=/var/python/etc
--sharedstatedir=/var/python/com
--localstatedir=/var/python
--mandir=/usr/share/man
--infodir=/opt/share/info/python --without-computed-gotos
> .buildaix/configure.out + make > .buildaix/make.out "Objects/typeobject.c", line 6243.26: 1506-068 (W) Operation between types "void*" and "struct _object*()(struct _object)" is not allowed. "Objects/typeobject.c", line 6290.22: 1506-068 (W) Operation between types "void*" and "long()(struct _object)" is not allowed. "Objects/typeobject.c", line 6490.18: 1506-068 (W) Operation between types "void*" and "long()(struct _object)" is not allowed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes_test.c", line 382.5: 1506-159 (E) Bit field type specified for M is not valid. Type unsigned assumed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes_test.c", line 382.5: 1506-159 (E) Bit field type specified for N is not valid. Type unsigned assumed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes_test.c", line 382.5: 1506-159 (E) Bit field type specified for O is not valid. Type unsigned assumed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes_test.c", line 382.5: 1506-159 (E) Bit field type specified for P is not valid. Type unsigned assumed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes_test.c", line 382.5: 1506-159 (E) Bit field type specified for Q is not valid. Type unsigned assumed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes_test.c", line 382.5: 1506-159 (E) Bit field type specified for R is not valid. Type unsigned assumed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes_test.c", line 382.5: 1506-159 (E) Bit field type specified for S is not valid. Type unsigned assumed. "/data/prj/aixtools/python/python-2.7.12/Modules/pyexpat.c", line 1538.27: 1506-068 (W) Operation between types "void*" and "void()(void,const char*,int)" is not allowed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes.c", line 3406.27: 1506-068 (W) Operation between types "void*" and "int()(void)" is not allowed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes.c", line 3954.31: 1506-280 (W) Function argument assignment between types "int()(void)" and "void*" is not allowed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes.c", line 5695.63: 1506-280 (W) Function argument assignment between types "void*" and "void*()(void,const void*,unsigned long)" is not allowed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes.c", line 5696.62: 1506-280 (W) Function argument assignment between types "void*" and "void*()(void,int,unsigned long)" is not allowed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes.c", line 5697.65: 1506-280 (W) Function argument assignment between types "void*" and "struct _object*()(const char,int)" is not allowed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes.c", line 5698.60: 1506-280 (W) Function argument assignment between types "void*" and "struct _object*()(void,struct _object*,struct _object*)" is not allowed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/_ctypes.c", line 5700.66: 1506-280 (W) Function argument assignment between types "void*" and "struct _object*()(const unsigned short,int)" is not allowed. "/data/prj/aixtools/python/python-2.7.12/Modules/_ctypes/callproc.c", line 837.32: 1506-280 (W) Function argument assignment between types "void()(void)" and "void" is not allowed. Assembler: /tmp/xlcS0YSYiqd.s: line 160: 1252-149 Instruction extsb is not implemented in the current assembly mode COM. + make install DESTDIR=/var/aixtools/aixtools/python/2.7.12.0 > .buildaix/install.out + mkinstallp.ksh /var/aixtools/aixtools/python/2.7.12.0 > .buildaix/mkinstallp.out

aixtools.python:aixtools.python.man.en_US:2.7.12.0::I:T:::::N:man pages::::0:: aixtools.python:aixtools.python.rte:2.7.12.0::I:T:::::N:built 27-Jul-2016 0744 UTC::::0::

root@x064:[/data/prj/aixtools/python/python-2.7.12]

DETAILS3: root@x064:[/data/prj/aixtools/python/Python-2.7.12]buildaix --without-computed-gotos
VRMF 2.7.12.0 xlc is /usr/vacpp/bin/xlc

This fails as a symbolic link:

root@x064:[/data/prj/aixtools/python/Python-2.7.12]buildaix --without-computed-gotos
VRMF 2.7.12.0 do_configure: using existing Makefile do_configure: run distclean to get a standard AIX configure

-rw-r----- 1 root system 52350 Jul 27 07:57 ./Makefile -rw-r----- 1 root system 732150 Jul 27 07:57 config.log -rwxr-x--x 1 root system 39198 Jul 27 07:57 config.status

root@x064:[/data/prj/aixtools/python/Python-2.7.12]ln -f ./Modules/ld_so_aix ../src/Python-2.7.12/Modules root@x064:[/data/prj/aixtools/python/Python-2.7.12]ls -l ../src/Python-2.7.12/Modules/ld_so_aix
-rwxr-x--x 2 root system 6208 Jul 27 07:57 ../src/Python-2.7.12/Modules/ld_so_aix

Trying again as a hard-link - fewer messages, but it still fails.

root@x064:[/data/prj/aixtools/python/Python-2.7.12]make clean find ../src/Python-2.7.12 -name '.py[co]' -exec rm -f {} ';' find . -name '.[oa]' -exec rm -f {} ';' find . -name '.s[ol]' -exec rm -f {} ';' find . -name '.so.[0-9].[0-9]' -exec rm -f {} ';' find build -name 'fficonfig.h' -exec rm -f {} ';' || true find build -name 'fficonfig.py' -exec rm -f {} ';' || true rm -f Lib/lib2to3/Grammar.pickle rm -rf build root@x064:[/data/prj/aixtools/python/Python-2.7.12]buildaix --without-computed-gotos VRMF 2.7.12.0 do_configure: using existing Makefile do_configure: run distclean to get a standard AIX configure

-rw-r----- 1 root system 52350 Jul 27 07:57 ./Makefile -rw-r----- 1 root system 732150 Jul 27 07:57 config.log -rwxr-x--x 1 root system 39198 Jul 27 07:57 config.status

Stop. make install returned an error root@x064:[/data/prj/aixtools/python/Python-2.7.12]