From: Andreas M. <MA...@de...> - 2015-11-10 17:37:10
|
Hi, I have recently worked on the installability of PyWBEM. The command "python setup.py install" either in the "src" directory of your local repo clone, or in the directory of an unpacked PyWBEM distribution archive installs not only PyWBEM, but also all of its dependencies for using it, including Python packages (e.g. setuptools, M2Crypto) and OS-level packages (e.g. openssl-devel etc.), and it even rebuilds the Swig tool which is too old for M2Crypto on some Linux systems (e.g. on RHEL 6). M2Crypto was a particularly complex thing to deal with, I had to create a fork of it to fix some of its installation issues. That fork is used during PyWBEM installation. I am working with the M2Crypto folks to get that solved also in their main repository, so we can get rid of the fork at some point again. The installation of Python packages is compatible with virtual Python environments, it targets the currently active Python environment, whether virtual or system. The installation of OS-level packages is done using sudo at this point. I am still looking for some means to have a choice to also install OS-level packages in your HOME tree. The Swig version is verified, and if it is lower than 2.0, it is downloaded and rebuilt, after its development prerequisites are installed (e.g. the pcre-devel package). Currently, it then replaces the one in /usr, using sudo. Again, a more gentle approach would be desirable. All of this is supported for RedHat-based, Debian-based, and SUSE-based Linux distros. The packages often have different names,depending on the distro. I have not yet invested in getting this to run on Windows, but plan to do so soon. The command "python setup.py develop" in the "src" directory of your local repo clone installs everything that is needed for developing PyWBEM. That is a superset of what is needed to use it, and the difference includes things like epydoc (including the patches that are needed for its latest 3.0.1 version), lxml, pyyaml, and some supporting OS-level packages including PyLint. Again, the Python packages go into the current Python environment, and the OS-level packages are installed using sudo. Some things that I consider basic are not installed; they are assumed to be there, such as make, grep, sed, etc. The makefile has been extended to support this as well, invoke "make" to get a help text explaining the various targets. (I changed the default make target from "build" to "help"). -> Please review the src/setup.py file and test the installation approach for both the "install" and "develop" commands and let me know whether you succeed and what changes you would like to see. So far, I have tested with: Ubuntu 12.04, x86 64-bit Ubuntu 14.04, x86 64-bit and 32-bit OpenSUSE 13, x86 64-bit and 32-bit CentOS 6.7, x86 64-bit and 32-bit CentOS 7, x86 64-bit RHEL 6.7, x86 64-bit Fedora 22, x86 64-bit and 32-bit It is particularly interesting to run it on distros that I have not yet tested with. For example, Debian would also be interesting (M2Crypto requires special treatment of Ubuntu and likely also of Debian); but I failed to get it installed properly on VirtualBox on Windows 7. Andy Andreas Maier IBM Senior Technical Staff Member, OpenStack for z Systems IBM Research & Development Laboratory Boeblingen, Germany ma...@de..., +49-7031-16-3654 ________________________________________________________________________ IBM Deutschland Research & Development GmbH Vorsitzende des Aufsichtsrats: Martina Koederitz Geschaeftsfuehrung: Dirk Wittkopp Sitz der Gesellschaft: Boeblingen Registergericht: Amtsgericht Stuttgart, HRB 243294 |