installHDF5.downloadLibrary() installHDF5.unZipArchive() pthreadPath = installHDF5.searchCLib("libpthread.so") EDVerbose.DEBUG("Libpthread found in %s" % pthreadPath) if pthreadPath is None: try: installHDF5.configure("--prefix=%s" % (installHDF5.getDestinationDirectory())) except: EDVerbose.ERROR("Error in the configure step, no pthread") else: try: installHDF5.configure("--prefix=%s --enable-threadsafe --with-pthread=%s" % (installHDF5.getDestinationDirectory(), pthreadPath)) except: EDVerbose.ERROR("Error in the configure step, with pthread") try: installHDF5.make("-j %i" % EDUtilsParallel.detectNumberOfCPUs()) except: EDVerbose.ERROR("Error in the 'make' step") try: installHDF5.make("install") except: EDVerbose.ERROR("Error in the 'make install' step") hdfPath = installHDF5.getDestinationDirectory() installHDF5.cleanSources() else: hdfPath = os.path.dirname(hdfPath) EDVerbose.DEBUG("Building H5Py with HDF5 library from %s " % (hdfPath)) install = EDUtilsLibraryInstaller(installDir, h5pyLibrary) install.checkPythonVersion() install.dependency("numpy", "20090405-Numpy-1.3")
elif oneline.startswith("LOADER"): makeFile.write("LOADER = %s %s" % (fortranCompiler, os.linesep)) # elif oneline.startswith("ARCHFLAGS"): # makeFile.write("ARCHFLAGS = -shared -o %s" % (os.linesep)) # elif oneline.startswith("ARCH"): # makeFile.write("ARCH = %s %s" % (fortranCompiler, os.linesep)) # elif oneline.startswith("RANLIB"): # makeFile.write("RANLIB = ls %s" % (os.linesep)) elif oneline.startswith("BLASLIB"): makeFile.write("BLASLIB = %s %s" % (libblas, os.linesep)) else: makeFile.write(oneline) makeFile.close() try: installBlas.make("-j %i" % EDUtilsParallel.detectNumberOfCPUs()) except Exception: EDVerbose.ERROR("Error for BLAS in the 'make' step") if not os.path.isdir(os.path.join(installBlas.getDestinationDirectory(), "lib")): os.makedirs(os.path.join(installBlas.getDestinationDirectory(), "lib")) blasPath = os.path.join(installBlas.getDestinationDirectory(), "lib") shutil.copyfile(os.path.join(installBlas.getSourceDirectory(), libblas), os.path.join(blasPath, libblas)) ################################################################################ # END of Blas / Start of Lapack ################################################################################ if lapackPath is None: EDVerbose.screen("Checking for Lapack %s : not found, so I have to compile it myself" % liblapack) else: EDVerbose.screen("Checking for Lapack %s : Found on %s, but I don't trust it because Blas was missing" % (liblapack, lapackPath)) liblapack = os.path.splitext(liblapack)[0] + ".a"
makeFile.write("LOADER = %s %s" % (fortranCompiler, os.linesep)) # elif oneline.startswith("ARCHFLAGS"): # makeFile.write("ARCHFLAGS = -shared -o %s" % (os.linesep)) # elif oneline.startswith("ARCH"): # makeFile.write("ARCH = %s %s" % (fortranCompiler, os.linesep)) # elif oneline.startswith("RANLIB"): # makeFile.write("RANLIB = ls %s" % (os.linesep)) elif oneline.startswith("BLASLIB"): makeFile.write("BLASLIB = %s %s" % (libblas, os.linesep)) else: makeFile.write(oneline) makeFile.close() try: installBlas.make("-j %i" % EDUtilsParallel.detectNumberOfCPUs()) except Exception: EDVerbose.ERROR("Error for BLAS in the 'make' step") if not os.path.isdir( os.path.join(installBlas.getDestinationDirectory(), "lib")): os.makedirs( os.path.join(installBlas.getDestinationDirectory(), "lib")) blasPath = os.path.join(installBlas.getDestinationDirectory(), "lib") shutil.copyfile( os.path.join(installBlas.getSourceDirectory(), libblas), os.path.join(blasPath, libblas)) ################################################################################ # END of Blas / Start of Lapack ################################################################################ if lapackPath is None:
EDVerbose.DEBUG("Libpthread found in %s" % pthreadPath) if pthreadPath is None: try: installHDF5.configure("--prefix=%s" % (installHDF5.getDestinationDirectory())) except Exception: EDVerbose.ERROR("Error in the configure step, no pthread") else: try: installHDF5.configure( "--prefix=%s --enable-threadsafe --with-pthread=%s" % (installHDF5.getDestinationDirectory(), pthreadPath)) except Exception: EDVerbose.ERROR("Error in the configure step, with pthread") try: installHDF5.make("-j %i" % EDUtilsParallel.detectNumberOfCPUs()) except Exception: EDVerbose.ERROR("Error in the 'make' step") try: installHDF5.make("install") except Exception: EDVerbose.ERROR("Error in the 'make install' step") hdfPath = installHDF5.getDestinationDirectory() installHDF5.cleanSources() else: hdfPath = os.path.dirname(hdfPath) EDVerbose.DEBUG("Building H5Py with HDF5 library from %s " % (hdfPath)) install = EDUtilsLibraryInstaller(installDir, h5pyLibrary) install.checkPythonVersion() install.dependency("numpy", "20090405-Numpy-1.3")