diff --git a/scripts/prepare_python_linux.sh b/scripts/prepare_python_linux.sh index 1b7271f3..ed5ad911 100755 --- a/scripts/prepare_python_linux.sh +++ b/scripts/prepare_python_linux.sh @@ -1,6 +1,6 @@ #!/bin/bash -mkdir python && cd python +mkdir -p python && cd python || exit 1 wget "https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tar.xz" || exit 1 tar -xf Python-3.6.4.tar.xz || exit 1 @@ -14,8 +14,23 @@ echo "Building Python to install to prefix $CUSTOM_PYTHON_PREFIX" make -j4 || exit 1 make install > /dev/null || exit 1 +cd .. + +echo "Patching libs in $CUSTOM_PYTHON_PREFIX/lib/python3.6/lib-dynload to have the correct rpath" +wget https://nixos.org/releases/patchelf/patchelf-0.9/patchelf-0.9.tar.bz2 || exit 1 +tar -xf patchelf-0.9.tar.bz2 || exit 1 +cd patchelf-0.9 || exit 1 +./configure || exit 1 +make || exit 1 +cd .. + +for lib in "$CUSTOM_PYTHON_PREFIX/lib/python3.6/lib-dynload"/*.so; do + echo " patching $lib" + patchelf-0.9/src/patchelf --set-rpath '$ORIGIN/../..' "$lib" || exit 1 +done + PYTHONHOME=$CUSTOM_PYTHON_PREFIX \ LD_LIBRARY_PATH=$CUSTOM_PYTHON_PREFIX/lib \ "$CUSTOM_PYTHON_PREFIX/bin/pip3" install jupyter || exit 1 -cd ../.. +cd ..