I want to use the gntp module to display toaster-like notifications for a C/C++ software. I want to package all the dependencies for the soft to be self-executable on a another computer.
The gntp module is only available through the pip installer, which cannot be used (The computer which is running the soft do not have any internet connection) : how can I install it from the sources ?
I would prefer not to force the user to install easy_install/pip and manually add the pip path to the %PATH.
PS : I'm using Python 2.7 on a Windows machine.
Even though Sheena's answer does the job,
pip
doesn't stop just there.From Sheena's answer:
At the end of this, you'll end up with a
.egg
file insite-packages
. As a user, this shouldn't bother you. You canimport
anduninstall
the package normally. However, if you want to do it thepip
way, you can continue the following steps.In the
site-packages
directory,unzip <.egg file>
EGG-INFO
directory as<pkg>-<version>.dist-info
<pkg-directory>
find <pkg-directory> > <pkg>-<version>.dist-info/RECORD
find <pkg>-<version>.dist-info >> <pkg>-<version>.dist-info/RECORD
. The>>
is to prevent overwrite.Now, looking at the
site-packages
directory, you'll never realize you installed withoutpip
. Touninstall
, just do the usualpip uninstall <pkg>
.python setup.py install
You may need administrator privileges for step 5. What you do here thus depends on your operating system. For example in Ubuntu you would say
sudo python setup.py install
EDIT- thanks to kwatford (see first comment)
To bypass the need for administrator privileges during step 5 above you may be able to make use of the --user flag. In this way you can install the package only for the current user.
The docs say:
Files will be installed into subdirectories of site.USER_BASE (written as userbase hereafter). This scheme installs pure Python modules and extension modules in the same location (also known as site.USER_SITE). Here are the values for UNIX, including Mac OS X:
More details can be found here: http://docs.python.org/2.7/install/index.html
To further explain Sheena's answer, I needed to have setup-tools installed as a dependency of another tool e.g. more-itertools.
Download
Click the Clone or download button and choose your method. I placed these into a
dev/py/libs
directory in my user home directory. It does not matter where they are saved, because they will not be installed there.Installing setup-tools
You will need to run the following inside the setup-tools directory.
General dependencies installation
Now you can navigate to the more-itertools direcotry and install it as normal.
cd ...
) into the directory containingsetup.py
python setup.py install