Infinidat / relocatable-python

build system for building a portable python interpreter
24 stars 8 forks source link

Enhancement: Great to have some sort of GUI library compiled as well. #9

Open amal-khailtash opened 9 years ago

amal-khailtash commented 9 years ago

One major problem I have is the lack of good compiled GUI toolkits. Having Tkinter at the minimum, and one or all of PyGtk, PyQt, and wxPython, would make this a great portable version.

amal-khailtash commented 9 years ago

Here is a recipe I have for downloading and building SIP, Qt 4.8.6, QScintilla and PyQt:

#!/bin/sh
#----------------------------------------
# build.sh
#----------------------------------------
DESTDIR=<PATH-TO>/relocatable-python/dist

export PATH=${DESTDIR}/bin:${PATH}

export LD_RUN_PATH=${LD_RUN_PATH}:${DESTDIR}/lib64:${DESTDIR}/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${DESTDIR}/lib64:${DESTDIR}/lib
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:${DESTDIR}/lib64/pkgconfig:${DESTDIR}/lib/pkgconfig

mkdir Qt
cd Qt

#----------------------------------------
echo Building SIP
#----------------------------------------
wget --timestamping -c http://sourceforge.net/projects/pyqt/files/sip/sip-4.16.7/sip-4.16.7.tar.gz && \
tar xf sip-4.16.7.tar.gz && \
cd sip-4.16.7 && \
python configure.py && \
make && \
make install
cd ../

#----------------------------------------
echo Building Qt
#----------------------------------------
wget --timestamping -c http://download.qt-project.org/official_releases/qt/4.8/4.8.6/qt-everywhere-opensource-src-4.8.6.tar.gz && \
tar xf qt-everywhere-opensource-src-4.8.6.tar.gz && \
cd qt-everywhere-opensource-src-4.8.6 && \
./configure --prefix=${DESTDIR} && \
gmake && \
gmake install
cd ../

#----------------------------------------
echo Building QScintilla
#----------------------------------------
wget --timestamping -c http://sourceforge.net/projects/pyqt/files/QScintilla2/QScintilla-2.8.4/QScintilla-gpl-2.8.4.tar.gz && \
tar xf QScintilla-gpl-2.8.4.tar.gz && \
cd QScintilla-gpl-2.8.4 && \
cd Qt4Qt5 && \
qmake qscintilla.pro && \
make && \
make install && \
cd ../../

#----------------------------------------
echo Building PyQt
#----------------------------------------
wget --timestamping -c http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.11.3/PyQt-x11-gpl-4.11.3.tar.gz && \
tar xf PyQt-x11-gpl-4.11.3.tar.gz && \
cd PyQt-x11-gpl-4.11.3 && \
python configure-ng.py && \
make && \
make install && \
cd ../

#----------------------------------------
cd ../
amal-khailtash commented 9 years ago

I can build tcl/tk independently. Can you please help me compile relocatable-python with Tkinter support?

DESTDIR=<PATH-TO>/relocatable-python/dist

#export PATH=${DESTDIR}/bin:${PATH}

export LD_RUN_PATH=${LD_RUN_PATH}:${DESTDIR}/lib64:${DESTDIR}/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${DESTDIR}/lib64:${DESTDIR}/lib
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:${DESTDIR}/lib64/pkgconfig:${DESTDIR}/lib/pkgconfig

echo Building tcl
wget --timestamping -c http://prdownloads.sourceforge.net/tcl/tcl8.6.4-src.tar.gz && \
tar xf tcl8.6.4-src.tar.gz && \
cd tcl8.6.4/unix && \
configure --enable-shared --enable-threads --prefix=${DESTDIR} && \
make && \
make install && \
cd ../../

echo Building tk
wget --timestamping -c http://prdownloads.sourceforge.net/tcl/tk8.6.4-src.tar.gz && \
tar xf tk8.6.4-src.tar.gz && \
cd tk8.6.4/unix && \
configure --enable-shared --enable-threads --prefix=${DESTDIR} && \
make && \
make install && \
cd ../../