Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Add the new Python instance to your environment:

    Code Block
    languagebash
    themeConfluence
    export PYTHON_ROOT=${LCLS_ROOT}/package/python/python2.7.13/linux-x86_64 
  2. Add the new Python binaries to the PATH environment variable:

    Code Block
    languagebash
    themeConfluence
    export PATH=${QT_HOME}/bin:${ORACLE_HOME}/bin:${PYTHON_ROOT}/bin:${PATH}
  3. Add the new Python libraries and their dependencies (EPICS 64-bit, Matlab, etc.) to the LD_LIBRARY_PATH environment variable. This is to ensure that the new 64-bit versions of Python modules built against those dependencies will work:

    Code Block
    languagebash
    themeConfluence
    export LD_LIBRARY_PATH=${LCLS_ROOT}/matlab/2016b/extern/lib:${EPICS_BASE_RELEASE}/lib/linux-x86_64:${EPICS_EXTENSIONS}/lib/linux-x86_64:${EPICS_BASE_TOP}/base-cpp-R4-6-0/lib/linux-x86_64:${PYTHON_ROOT}/lib:${PYTHON_ROOT}/build/Python2.7.13/Lib:${LD_LIBRARY_PATH} 
  4. Set the PYTHONPATH environment variable. This is to ensure that there are no false positives when testing applications, since the current PYTHONPATH may still have access to older versions of Python modules and override the new libraries:

    Info
    titleNote

    The ${EPICS_BASE_TOP}/base-cpp-R4-6-0/pvaPy/lib/python/2.7/linux-x86_64 directory contains EPICS V4 Python modules.
    The /usr/local/lcls/tools/python/toolbox directory contains SLAC-maintained Python modules.

    Code Block
    languagebash
    themeConfluence
    export PYTHONPATH=${EPICS_BASE_TOP}/base-cpp-R4-6-0/pvaPy/lib/python/2.7/linux-x86_64:${LCLS_ROOT}/tools/python/toolbox
  5. [Optional] If your application(s) import the "cx_Oracle" module, add the following to your environment:

    Code Block
    languagebash
    themeConfluence
    export PATH=${ORACLE_HOME}/bin:${PATH}
    export LD_LIBRARY_PATH=${ORACLE_HOME}/lib:${LD_LIBRARY_PATH} 
  6. [Optional] If your application(s) import "PyQt", "PyQwt", or any other Python modules that depend on Qt4 64-bit, add the following to your environment:

    Code Block
    languagebash
    themeConfluence
    export QT_HOME=${LCLS_ROOT}/package/Qt/Qt-4.8.6/linux-x86_64
    export PATH=${QT_HOME}/bin:${PATH}
    export LD_LIBRARY_PATH=${QT_HOME}/lib:${LD_LIBRARY_PATH} 


    If your application uses Qt5 64-bit, add the following to your environment (needs updated gcc and glibc):

    Code Block
    languagebash
    themeConfluence
    export LD_LIBRARY_PATH=${LCLS_ROOT}/package/gcc/gcc-4.9.4/lib:${LD_LIBRARY_PATH}
    export LD_LIBRARY_PATH=/usr/local/lcls/package/gcc/gcc-4.9.4/lib64:$LD_LIBRARY_PATH
     
    export QT_HOME=${LCLS_ROOT}/package/Qt/Qt-5.9.1/linux-x86_64
    export PATH=${QT_HOME}/bin:${PATH}
    export LD_LIBRARY_PATH=${QT_HOME}/lib:${LD_LIBRARY_PATH}

...

  1. Add the previous Python instance (Python 2.7.4 32-bit) to your environment:

    Code Block
    languagebash
    themeConfluence
    export PYTHON_ROOT=${LCLS_ROOT}/package/python/python2.7.4
  2. Add the previous Python binaries to your environment:

    Code Block
    languagebash
    themeConfluence
    export PATH=${PYTHON_ROOT}/bin:${PATH} 
  3. Add the 32-bit Python libraries and their dependencies to your environment:

    Code Block
    languagebash
    themeConfluence
    export LD_LIBRARY_PATH=${PYTHON_ROOT}/lib:${LD_LIBRARY_PATH}
    export LD_LIBRARY_PATH=${PYTHON_ROOT}/lib/python2.7/lib-dynload:${LD_LIBRARY_PATH}
  4. [Optional]  If your application(s) import the 32-bit "cx_Oracle" module, add the following to your environment:

    Code Block
    languagebash
    themeConfluence
    export ORACLE_HOME=${LCLS_ROOT}/package/oracle/product/11.1.0.6/client
    export PATH=${ORACLE_HOME}/bin:${PATH}
    export LD_LIBRARY_PATH=${ORACLE_HOME}/lib:${LD_LIBRARY_PATH}
  5. [Optional] If your application(s) import "PyQt4", "PyQwt", or any other 32-bit Qt dependencies, add the following to your environment:

    Code Block
    languagebash
    themeConfluence
    export QT_HOME=${LCLS_ROOT}/package/Qt-4.8.5
    export PATH=${QT_HOME}/bin:${PATH}
    export LD_LIBRARY_PATH=${QT_HOME}/lib:${LD_LIBRARY_PATH}
  6. [Optional] If your application(s) import "matlab_wrapper" or any other 32-bit Matlab 2012a dependent modules, add the following to your environment:

    Code Block
    languagebash
    themeConfluence
    export LD_LIBRARY_PATH=${LCLS_ROOT}/matlab/2012a/extern/lib:${LD_LIBRARY_PATH}
  7. [Optional] If your application has dependencies on 32-bit pvaPy, set the following in your Python path:

    Code Block
    languagebash
    themeConfluence
    export PYTHONPATH=${EPICS_BASE_TOP}/base-cpp-R4-6-0/pvaPy/lib/python/2.7/linux-x86:${TOOLS}/python/toolbox