Current File : /home/inlingua/public_html/decay_sym/root/var/softaculous/apps/python3/build/make.sh |
#!/bin/bash
source /var/softaculous/apps/build/common.sh
python3=Python-3.11.3
version=3.11.3
PATH_PYTHON3=$AMPPS_PATH/python3
docutils=docutils-0.19
docutils() {
is_dir $SRC_PATH/$docutils
if [ $? == 0 ]
then
rm -rf $SRC_PATH/$docutils
fi
is_dir $AMPPS_PATH/python3/lib/python3.11/site-packages/$docutils-py3.11.egg
if [ $? == 0 ]
then
banner "Installing docutils"
cd $SRC_PATH
is_file $docutils.tar.gz
if [ $? == 0 ]
then
banner $docutils".tar.gz Downloading"
wget --no-check-certificate -O $SRC_PATH/$docutils.tar.gz https://files.pythonhosted.org/packages/6b/5c/330ea8d383eb2ce973df34d1239b3b21e91cd8c865d21ff82902d952f91f/$docutils.tar.gz >> $LOG 2>&1
fi
tar -zxf $docutils.tar.gz
cd $docutils
$PATH_PYTHON3/bin/python3 setup.py install >> $LOG 2>&1
fi
is_dir $AMPPS_PATH/python3/lib/python3.11/site-packages/$docutils-py3.11.egg
if [ $? == 0 ]
then
banner "docutils could not be installed due to some reason"
exit 1
fi
}
python3() {
is_dir $SRC_PATH/$python3
if [ $? == 0 ]
then
rm -rf $SRC_PATH/$python3
fi
is_file $PATH_PYTHON3/bin/python
if [ $? == 0 ]
then
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Installing PYTHON3"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
ldconfig
cd $SRC_PATH
is_file $python3.tgz
if [ $? == 0 ]
then
banner $python3".tgz Downloading"
wget --no-check-certificate -O $SRC_PATH/$python3.tgz https://www.python.org/ftp/python/$version/$python3.tgz >> $LOG 2>&1
fi
tar -zxf $python3.tgz
cd $python3
# To fix libssl.so error's add /usr/local/apps/lib in /etc/ld.so.conf
# and after that execute the following command: ldconfig
# refer : https://techglimpse.com/python-openssl-installation-error-solution/
######################## For adding SSL support in Python ###################
sed -i 's/#SSL=\/usr\/local\/ssl/SSL=\/usr\/local\/apps\/openssl-11/g' Modules/Setup
sed -i '215,217 s/#//' Modules/Setup
sed -i '434 s/#pragma/\/\/#pragma/' Modules/_ctypes/callbacks.c
sed -i '435 s/#pragma/\/\/#pragma/' Modules/_ctypes/callbacks.c
sed -i '443 s/#pragma/\/\/#pragma/' Modules/_ctypes/callbacks.c
#https://www.programmersought.com/article/2720814329/
sed -i 's/\/usr\/local\/include\/sqlite3/\/usr\/local\/apps/g' setup.py
#############################################################################
export PKG_CONFIG_PATH=/usr/local/apps/lib/pkgconfig
export LD_LIBRARY_PATH="$AMPPS_PATH/lib:$AMPPS_PATH/libffi/lib:/usr/local/apps/openssl-11/lib:$LD_LIBRARY_PATH"
#LDFLAGS="-L/usr/lib64" CPPFLAGS="-I/usr/include" PKG_CONFIG_PATH=/usr/lib64/pkgconfig ./configure --prefix=$PATH_PYTHON3 --disable-ipv6 --with-ensurepip=yes --enable-shared --with-system-ffi && make && make install >> $LOG 2>&1
#LDFLAGS=-L/usr/local/apps/openssl-11/lib CPPFLAGS=-I/usr/local/apps/openssl-11/include PKG_CONFIG_PATH=/usr/local/apps/openssl-11/lib/pkgconfig ./configure --prefix=$PATH_PYTHON3 --disable-ipv6 --with-ensurepip=yes --enable-shared --with-system-ffi LDFLAGS="-L$AMPPS_PATH/libffi/lib -L$AMPPS_PATH/lib" CPPFLAGS="-I$AMPPS_PATH/libffi/include " && make && make install >> $LOG 2>&1
LDFLAGS="-L/usr/local/apps/openssl-11/lib -L/usr/local/apps/lib -lcrypt " CPPFLAGS="-I/usr/local/apps/openssl-11/include -I/usr/local/apps/include " PKG_CONFIG_PATH="/usr/local/apps/openssl-11/lib/pkgconfig:/usr/local/apps/lib/pkgconfig" ./configure --prefix=$PATH_PYTHON3 --disable-ipv6 --with-ensurepip=yes --enable-shared --with-system-ffi LDFLAGS="-L$AMPPS_PATH/libffi/lib -L/usr/local/apps/openssl-11/lib -L$AMPPS_PATH/lib" CPPFLAGS="-I$AMPPS_PATH/libffi/include -I/usr/local/apps/openssl-11/include " && make && make install >> $LOG 2>&1
#patchelf --set-rpath /usr/local/apps/openssl-11/lib/ $AMPPS_PATH/python3/bin/python3.11
patchelf --set-rpath $AMPPS_PATH/python3/lib/:$AMPPS_PATH/lib/:/usr/local/apps/openssl-11/lib/ $AMPPS_PATH/python3/bin/python3.11
patchelf --set-rpath $AMPPS_PATH/python3/lib/:$AMPPS_PATH/lib/:/usr/local/apps/openssl-11/lib/ $AMPPS_PATH/python3/bin/python3
fi
is_file $PATH_PYTHON3/bin/python3
if [ $? == 0 ]
then
banner 'PYTHON3 could not be installed due to some reason'
exit 1
fi
#mod_wsgi
#mod_wsgi_2
#Below 3 modules not required in 3.11
#not required for Python 2.5 and above
#docutils
#setuptools
#trac581052
}
python3