Re: [Numpy-discussion] Numpy-discussion Digest, Vol 22, Issue 21
Message: 4 Date: Sun, 06 Jul 2008 13:36:24 +0900 From: David Cournapeau
Subject: Re: [Numpy-discussion] Numpy on AIX 5.3 To: Discussion of Numerical Python 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
participants (2)
-
Charles R Harris
-
Marek Wojciechowski