[Numpy-discussion] Numpy-discussion Digest, Vol 22, Issue 21

Marek Wojciechowski wojciechowski_m@o2...
Sun Jul 6 12:05:21 CDT 2008


> Message: 4
> Date: Sun, 06 Jul 2008 13:36:24 +0900
> From: David Cournapeau <david@ar.media.kyoto-u.ac.jp>
> Subject: Re: [Numpy-discussion] Numpy on AIX 5.3
> To: Discussion of Numerical Python <numpy-discussion@scipy.org>
> Message-ID: <48704BC8.6070900@ar.media.kyoto-u.ac.jp>
> Content-Type: text/plain; charset=ISO-8859-1
>
> Marek Wojciechowski wrote:
> > Hi!
> >
> > I'm trying to install numpy-1.1 on AIX 5.3 but i'm getting an error:
> >
> > running build
> > running scons
> > customize UnixCCompiler
> > Found executable /usr/bin/cc_r
> > customize IBMFCompiler
> > Found executable /usr/bin/xlf90
> > Found executable /usr/bin/xlf
> > Found executable /usr/bin/xlf95
> > Creating /tmp/tmp5j_OiW/qV0MJ4_xlf.cfg
> > customize IBMFCompiler
> > Creating /tmp/tmp5j_OiW/-LWcxB_xlf.cfg
> > customize UnixCCompiler
> > customize UnixCCompiler using scons
> > Traceback (most recent call last):
> >   File "setup.py", line 96, in <module>
> >     setup_package()
> >   File "setup.py", line 89, in setup_package
> >     configuration=configuration )
> >   File "/home/marek/tmp/numpy-1.1.0/numpy/distutils/core.py", line 184,
> > in setup
> >     return old_setup(**new_attr)
> >   File "/home/marek/apython/lib/python2.5/distutils/core.py", line 151,
> > in setup
> >     dist.run_commands()
> >   File "/home/marek/apython/lib/python2.5/distutils/dist.py", line 974,
> > in run_commands
> >     self.run_command(cmd)
> >   File "/home/marek/apython/lib/python2.5/distutils/dist.py", line 994,
> > in run_command
> >     cmd_obj.run()
> >   File "/home/marek/tmp/numpy-1.1.0/numpy/distutils/command/build.py",
> > line 38, in run
> >     self.run_command('scons')
> >   File "/home/marek/apython/lib/python2.5/distutils/cmd.py", line 333, in
> > run_command
> >     self.distribution.run_command(command)
> >   File "/home/marek/apython/lib/python2.5/distutils/dist.py", line 993,
> > in run_command
> >     cmd_obj.ensure_finalized()
> >   File "/home/marek/apython/lib/python2.5/distutils/cmd.py", line 117, in
> > ensure_finalized
> >     self.finalize_options()
> >   File "/home/marek/tmp/numpy-1.1.0/numpy/distutils/command/scons.py",
> > line 289, in finalize_options
> >     self.cxxcompiler = cxxcompiler.cxx_compiler()
> >   File "/home/marek/tmp/numpy-1.1.0/numpy/distutils/ccompiler.py", line
> > 303, in CCompiler_cxx_compiler
> >     + cxx.linker_so[2:]
> > TypeError: can only concatenate list (not "str") to list
>
> Just by reading at the code, the line
>
> [cxx.linker_so[0]] + cxx.compiler_cxx[0] + cxx.linker_so[2:]
>
> Cannot work unless cxx.compiler_cxx is a nested list. Since AIX is not
> that common, it is well possible that this mistake was hidden for a long
> time. So I would first try something like:
>
> cxx.linker_so = [cxx.linker_so[0], cxx.compiler_cxx[0]] +cxx.linker_so[2:]
>

Yeah, this pushed building further. However there's another bug:

creating build/temp.aix-5.3-2.5/build
creating build/temp.aix-5.3-2.5/build/src.aix-5.3-2.5
creating build/temp.aix-5.3-2.5/build/src.aix-5.3-2.5/numpy
creating build/temp.aix-5.3-2.5/build/src.aix-5.3-2.5/numpy/core
creating build/temp.aix-5.3-2.5/build/src.aix-5.3-2.5/numpy/core/src
compile 
options: '-Ibuild/src.aix-5.3-2.5/numpy/core/src -Inumpy/core/include -Ibuild/src.aix-5.3-2.5/numpy/core -Inumpy/core/src -Inumpy/core/include -I/home/marek/apython/include/python2.5 -I/home/marek/apython/include/python2.5 -c'
cc_r: build/src.aix-5.3-2.5/numpy/core/src/umathmodule.c
"numpy/core/src/umathmodule.c.src", line 1518.29: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.30: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.28: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.29: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.33: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.30: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.31: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.35: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.29: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.30: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.28: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.29: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.33: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.30: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.31: 1506-046 (S) Syntax error.
"numpy/core/src/umathmodule.c.src", line 1518.35: 1506-046 (S) Syntax error.
error: 
Command "cc_r -DNDEBUG -O -Ibuild/src.aix-5.3-2.5/numpy/core/src -Inumpy/core/include -Ibuild/src.aix-5.3-2.5/numpy/core -Inumpy/core/src -Inumpy/core/include -I/home/marek/apython/include/python2.5 -I/home/marek/apython/include/python2.5 -c 
build/src.aix-5.3-2.5/numpy/core/src/umathmodule.c -o 
build/temp.aix-5.3-2.5/build/src.aix-5.3-2.5/numpy/core/src/umathmodule.o" 
failed with exit status 1

The solution is to change line 1518 of umathmodule.c from:
        *((@typ@ *)op) += 0; // clear sign-bit
         
        to

        *((@typ@ *)op) += 0; /* clear sign-bit */

Generally IBM C compiler doesn't like // style commenting. I found similar 
problems also in scipy.

Now numpy-1.1.0 compiles on AIX 5.3 (with ActivePython 2.5).

Greetings,
Marek
-- 
Marek Wojciechowski


More information about the Numpy-discussion mailing list