Subject: | |
From: | |
Reply To: | |
Date: | Sun, 31 Jul 2016 21:02:20 +0100 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
On Sun, 31 Jul 2016, ~Stack~ wrote:
> I have the exact same problem. Don't try to replace 2.6.6. It broke ALL
> KINDS of things including RPM when I tried it...did not go well at all
> (but a good learning experience! :-).
>
> Here are three solutions:
>
> 1) Software Collections: https://www.softwarecollections.org/en/
> Upside, A certain favored upstream vendor backs a lot of these packages
> (just no support). Downside, they run in a special environment which can
> be tricky depending on the application. It basically runs in a subshell
> and that confuses my users at least....
> Same with SCL. We use it elsewhere too, but
> anything that the users have to interact with, we found they get
> frustrated because of the weird subshell-environment it uses.
If your users are used to environment modules, the SCL pythons
can be made to work with those rather than SCL sub-shells
- here is our python27 module:
#%Module2013
#
# $Id: python27,v 1.2 2016/07/31 19:54:12 werdna Exp $
#
conflict python33
if [ file isfile /opt/rh/python27/root/usr/bin/python ] {
module-whatis "Loads python27"
set pythonroot /opt/rh/python27/root
prepend-path PATH $pythonroot/usr/bin
prepend-path LD_LIBRARY_PATH $pythonroot/usr/lib64
prepend-path MANPATH $pythonroot/usr/share/man
# For systemtap
prepend-path XDG_DATA_DIRS $pythonroot/usr/share
# For pkg-config
prepend-path PKG_CONFIG_PATH $pythonroot/usr/lib64/pkgconfig
} else {
module-whatis "Python 27 not installed on this machine"
set helpmsg "Python 27 not installed on this machine"
if [ expr [ module-info mode load ] || [ module-info mode display ] ] {
# bring in new version
puts stderr "Python 27 not installed on [uname nodename]"
}
}
--
Andrew C Aitchison
|
|
|