Pex import problems

Sam Raker sam.raker at
Tue Oct 21 17:34:34 CEST 2014

Hi all,
I'm trying to use Pex ( to include requests in a little script to ping a server from a machine that doesn't come with pip (or much of anything, really) installed. I'm running into problems outputting a pex file that depends on a local script. 

I've got a command-line file, ``, that can be called with a few command-line options. I can run `pex -r requests -o client.pex --`, but when I try `./client.pex -h` I get an error about "no such file or directory: '-h'".

Ok, next attempt: `pex -r requests -o client.pex -e client` --> "ImportError: No module named client". I dug around in the code a bit, and from what I can tell, `-e FOO` boils down to `__import__(FOO)`, which I can do, both from the interpreter and from a test script. So what am I missing?

The only other option I can think of would be: `pex -r requests -o client.pex` & then write a script that calls `` from the pex environment (i.e., `./client.pex -h` or whatever), and bundle the pex file, ``, and the script together. But that seems like a misuse of the tool, at best.

Alternatively/additionally: is there any mailing list/help source for pex? It seems like a great project, but I've not been able to find many resources out there, which is why I'm turning to you guys.

(Why not just install pip/requests on the target machine? Because this is part of an effort to automate provisioning of a bunch of machines.)
(Why not use pants? Because literally all we need is requests, and that seems like overkill.)

(Also: anyone who's planning on chewing me out about formatting: I TRIED posting by email to comp.lang.python at, but it wouldn't let me. Sorry for the extra whitespace.)

More information about the Python-list mailing list