Compiling Python 2.5.2 on AIX 5.2

Randy Galbraith Randy.Galbraith at gmail.com
Tue Apr 22 18:46:43 CEST 2008


On Apr 20, 10:17 pm, "Martin v. Löwis" <mar... at v.loewis.de> wrote:
> I recommend you disable compilation of ctypes (by removing the call
> to detect_ctypes from setup.py). It's fairly unlikely that you can
> manage to make ctypes work on your system.

Martin, Thanks again.  I'm much closer now.  Here is the script I'm
using to compile Python on AIX:

--begin script--
cp /path/to/include/bzlib.h Include/.
cat <<EOF | patch setup.py
*** setup.py.xxreg042108	2008-04-21 13:19:24.000000000 -0700
--- setup.py	2008-04-21 13:20:56.000000000 -0700
***************
*** 1052,1058 ****
                  exts.append( Extension('dl', ['dlmodule.c']) )

          # Thomas Heller's _ctypes module
!         self.detect_ctypes(inc_dirs, lib_dirs)

          # Platform-specific libraries
          if platform == 'linux2':
--- 1052,1059 ----
                  exts.append( Extension('dl', ['dlmodule.c']) )

          # Thomas Heller's _ctypes module
!         #self.detect_ctypes(inc_dirs, lib_dirs)
!         # Removed for AIX as per Martin v. Lowis 4/21/08

          # Platform-specific libraries
          if platform == 'linux2':
EOF
./configure --enable-unicode=ucs2 --with-gcc\
            --disable-ipv6 --prefix=$HOME
--end script--

make then compiles relatively cleanly.  However, make test results in
this:

276 tests OK.
2 tests failed:
    test_mmap test_wait4
44 tests skipped:
    test_aepack test_al test_applesingle test_bsddb test_bsddb185
[snip]
2 skips unexpected on aix5:
    test_largefile test_ctypes
make: *** [test] Error 1

The concern of course is why mmap and wait4 failed.  Earlier in the
make test output we see this for mmap:

test test_mmap crashed -- <type 'exceptions.EnvironmentError'>: [Errno
22] Invalid argument

and for wait4:

test test_wait4 failed -- Traceback (most recent call last):
  File "Python-2.5.2/Lib/test/fork_wait.py", line 75, in test_wait
    self.wait_impl(cpid)
  File "Python-2.5.2/Lib/test/test_wait4.py", line 28, in wait_impl
    self.assertEqual(spid, cpid)
AssertionError: 0 != 6840386

What do these failures indicate?  Not sure of course, but will
research and report back.

Kind regards,
-Randy Galbraith
"We seem to be made to suffer. It's our lot in life." - C3PO of Star
Wars



More information about the Python-list mailing list