====== A propos de python ====== On trouve plusieurs versions de python sur nemo: ^ origine ^ chemin ^ version ^ PYTHONPATH ^ 32/64 ^ | SUNWPython | /usr/bin/python | 2.4.4 | /local/apps/lib/python2.4/site-packages | | | SMCpython | /usr/local/bin/python | 2.5.1 | /local/apps/smc/lib/python2.5/site-packages | | | CSWpython | /opt/csw/bin/python | 2.5.1 | /local/apps/csw/lib/python2.5/site-packages | | | sources | /local/apps/bin/python | 2.5.2 | /local/apps/lib/python2.5/site-packages | | ===== Compilation de python ===== ==== 32 bits ==== ./configure --prefix=/local/apps \ CC=cc CXX=CC \ CPPFLAGS="-I/usr/sfw/include" \ LDFLAGS="-L/usr/sfw/lib -R/usr/sfw/lib" Penser à commenter OPT: dans le Makefile ==== 64 bits ==== ./configure --prefix=/local/apps/64 \ CC=cc CXX=CC \ CPPFLAGS="-m64 -I/usr/sfw/include" \ LDFLAGS="-m64 -L/usr/sfw/lib/64 -R/usr/sfw/lib/64" erreur: "/local/apps/src/Python-2.5.2/./Include/pyport.h", line 761: #error: "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)." cc: acomp failed for /local/apps/src/Python-2.5.2/Modules/_struct.c voir [[http://mail.python.org/pipermail/python-bugs-list/2007-January/036647.html]] ====== numpy-1.2.1 ====== ===== avec python 2.4.4 ===== mêmes corrections que pour la version 1.0.4 > python setup.py install --prefix=$HOME/ | & tee INSTALL.LOG ====== numpy-1.0.4 ====== ===== Installation avec Python 2.4 ===== * [[http://www.scipy.org/Download|numpy-1.0.4.tar.gz]] se logger devel1 sur nemo: module load ss12 hpc fichier site.cfg dans numpy/distutils/ [DEFAULT] library_dirs = /opt/studio12/SUNWspro/lib include_dirs = /opt/studio12/SUNWspro/include [blas] blas_libs = sunperf [lapack] lapack_libs = sunperf remove numpy/distutils/fcompiler/sun.py f77compact from the optionlist > diff -u numpy/distutils/fcompiler/sun.py-dist numpy/distutils/fcompiler/sun.py --- numpy/distutils/fcompiler/sun.py-dist Tue Oct 28 12:21:48 2008 +++ numpy/distutils/fcompiler/sun.py Thu Nov 6 18:22:50 2008 @@ -38,7 +38,7 @@ return ['-xtarget=generic'] def get_libraries(self): opt = [] - opt.extend(['fsu','sunmath','mvec','f77compat']) + opt.extend(['fsu','sunmath','mvec']) return opt if __name__ == '__main__': , et enfin: > python setup.py install --prefix=$HOME/lib | & tee INSTALL.LOG et s'installe dans /local/apps/lib/lib/python2.4/site-packages/ Le test: setenv PYTHONPATH /local/apps/lib/lib/python2.4/site-packages/ python -c 'import numpy; numpy.test()' échoue sur: ====================================================================== FAIL: check_large_types (numpy.core.tests.test_scalarmath.TestPower) ---------------------------------------------------------------------- Traceback (most recent call last): File "/local/apps/lib/lib/python2.4/site-packages/numpy/core/tests/test_scalarmath.py", line 52, in check_large_types assert b == 6765201, "error with %r: got %r" % (t,b) AssertionError: error with : got 6765201.00000000000364 et pourtant: nemo-henry% /usr/bin/python Python 2.4.4 (#1, Jan 9 2007, 23:31:33) [C] on sunos5 Type "help", "copyright", "credits" or "license" for more information. >>> 6765201 == 6765201.00000000000364 True >>> ===== Installation avec Python 2.5 ===== se logger devel1 sur nemo: module load ss12 hpc fichier site.cfg dans numpy/distutils/ [DEFAULT] library_dirs = /opt/studio12/SUNWspro/lib:/opt/csw/lib include_dirs = /opt/studio12/SUNWspro/include:/opt/csw/include [blas] blas_libs = sunperf [lapack] lapack_libs = sunperf et enfin: > setenv LDFLAGS "-L/opt/csw/lib -R/opt/csw/lib" > /opt/csw/bin/python setup.py install --prefix=$HOME/lib/blastwave | & tee INSTALL_BLASTWAVE.LOG et s'installe dans /local/apps/lib/blastwave/lib/python/site-packages Le test: setenv PYTHONPATH /local/apps/lib/blastwave/lib/python/site-packages /opt/csw/bin/python -c 'import numpy; numpy.test()' ===== Installation avec python 2.5.2 ===== python a été recompilé à partir des sources: > module load ss12 hpc > setenv PATH /local/apps/lib/bin:/opt/SUNWhpc/bin:/opt/studio12/SUNWspro/bin:/usr/local/wrapper/bin:/usr/bin:/usr/bin:/usr/ccs/bin:/usr/sfw/bin > python setup.py install --prefix=$HOME/lib | & tee INSTALL.LOG ====== scipy ====== ===== version 0.6.0 ===== > setenv PYTHONPATH /local/apps/lib/python2.4/site-packages/ > mkdir -p scipy/distutils/fcompiler/ > cp ../numpy-1.2.1/numpy/distutils/fcompiler/sun.py scipy/distutils/fcompiler/ > setenv LDFLAGS "-lCrun -lCstd" > setenv LAPACK /opt/SUNWspro/lib/libsunmath.so > setenv BLAS /opt/SUNWspro/lib/libsunperf.so > cp -rp scipy/sparse/sparsetools/sparsetools.h scipy/sparse/sparsetools/sparsetools.h-dist > diff -u scipy/sparse/sparsetools/sparsetools.h-dist scipy/sparse/sparsetools/sparsetools.h --- scipy/sparse/sparsetools/sparsetools.h-dist Sat Sep 22 09:55:25 2007 +++ scipy/sparse/sparsetools/sparsetools.h Fri Nov 7 08:47:39 2008 @@ -22,8 +22,8 @@ #include #include +#include - /* * Extract main diagonal of CSR matrix A * * [[http://blogs.sun.com/yongsun/entry/build_scipy_0_6_0|build scipy-0.6.0 on Solaris with SunStudio 12]] ===== Installation avec python 2.4 ===== * scipy-0.6.0.tar.gz > which python /usr/bin/python > python -c 'import os,sys;print os.name,sys.platform' posix sunos5 > python -c 'import sys;print sys.version' 2.4.4 (#1, Jan 9 2007, 23:31:33) [C] > > python setup.py config_fc --help-fcompiler SunFCompiler instance properties: archiver = None compile_switch = '-c' compiler_f77 = ['/opt/studio12/SUNWspro/bin/f90', '-ftrap=%none', '- f77', '-xcode=pic32'] compiler_f90 = ['/opt/studio12/SUNWspro/bin/f90', '-xcode=pic32'] compiler_fix = ['/opt/studio12/SUNWspro/bin/f90', '-fixed', '- xcode=pic32'] libraries = ['fsu', 'sunmath', 'mvec'] library_dirs = [] linker_exe = None linker_so = ['/opt/studio12/SUNWspro/bin/f90', '-Bdynamic', '-G', '- Bdynamic', '-G'] object_switch = '-o ' ranlib = None version = LooseVersion ('8.3') version_cmd = ['/opt/studio12/SUNWspro/bin/f90', '-V'] Fortran compilers found: --fcompiler=sun Sun or Forte Fortran 95 Compiler (8.3) Puis, en s'inspirant du [[http://mailman.rwth-aachen.de/pipermail/sunhpc/2008-March/000424.html|message]] > setenv LD_PRELOAD /usr/lib/libmtsk.so > wget "http://downloads.sourceforge.net/scipy/scipy-0.5.2.1.tar.gz?modtime=1187640016&big_mirror=0" > tar xzf ../downloads/scipy-0.5.2.1.tar.gz > cd scipy-0.5.2.1/ > python setup.py install --prefix=$HOME/lib | & tee INSTALL.LOG ===== Installation avec python 2.5.1 ===== > which python /opt/csw/bin/python > /opt/csw/bin/python -c 'import os,sys;print os.name,sys.platform' posix sunos5 > /opt/csw/bin/python -c 'import sys;print sys.version' 2.5.1 (r251:54863, Nov 3 2007, 02:54:36) [C] Puis, en s'inspirant du [[http://mailman.rwth-aachen.de/pipermail/sunhpc/2008-March/000424.html|message]] > setenv LD_PRELOAD /usr/lib/libmtsk.so > wget "http://downloads.sourceforge.net/scipy/scipy-0.5.2.1.tar.gz?modtime=1187640016&big_mirror=0" > tar xzf ../downloads/scipy-0.5.2.1.tar.gz > cd scipy-0.5.2.1/ > /opt/csw/bin/python setup.py install --prefix=$HOME/lib/blastwave | & tee INSTALL.LOG ====== PyStemmer ====== s'installe sans problème /local/apps/src/PyStemmer-1.0.1 > python setup.py install --prefix=$HOME/lib running install running build running build_ext running install_lib copying build/lib.solaris-2.10-i86pc-2.4/Stemmer.so -> /local/apps/lib/lib/python2.4/site-packages ====== PyML ====== * problèmes de [[compil_pyml|compilation]] ====== NetworkX ====== sur nemo, compte devel1: python setup.py install --prefix=$HOME | & tee INSTALL.LOG ====== Pygraphviz ====== > pwd /local/apps/src/pygraphviz-0.37 bash-3.00$ export PYTHONPATH=/local/apps/lib/python2.4/site-packages bash-3.00$ export PATH=/opt/csw/graphviz2/bin:$PATH bash-3.00$ python setup.py install --prefix=$HOME | tee INSTALL.LOG Package libagraph was not found in the pkg-config search path. Perhaps you should add the directory containing `libagraph.pc' to the PKG_CONFIG_PATH environment variable No package 'libagraph' found Package libagraph was not found in the pkg-config search path. Perhaps you should add the directory containing `libagraph.pc' to the PKG_CONFIG_PATH environment variable No package 'libagraph' found Trying pkg-config Trying dotneato-config library_path=/opt/csw/graphviz2/lib/graphviz include_path=/opt/csw/graphviz2/include/graphviz running install running build running build_py ... pour nettoyer, effacer: /local/apps/lib/python2.4/site-packages/pygraphviz/ \rm -rf build/* Pour tester: python -c 'import pygraphviz; pygraphviz.test()'