Skip to content

Path prefix issue on Raspberry Pi #15

@ralienpp

Description

@ralienpp

I attempt to use Platter on a RasPi, I stumbled upon several issues, the first one produces this output:

pi@raspberrypi ~ $ platter build test
Using package from test
Using wheel cache in /home/pi/.cache/platter
Downloading and extracting virtualenv bootstrapper
  Created scratchpad in /tmp/tmpRcLmBb-venv-tmp
  Executing pip install --download /tmp/tmpRcLmBb-venv-tmp virtualenv
    Downloading/unpacking virtualenv
    Saved /tmp/tmpRcLmBb-venv-tmp/virtualenv-12.0.7.tar.gz
    Running setup.py egg_info for package virtualenv

      warning: no previously-included files matching '*' found under directory 'docs/_templates'
      warning: no previously-included files matching '*' found under directory 'docs/_build'
    Successfully downloaded virtualenv
    Cleaning up...
Created scratchpad in /tmp/tmpzbH7YN-venv
Initializing build virtualenv in /tmp/tmpzbH7YN-venv
> /usr/local/lib/python2.7/dist-packages/platter.py(253)execute()
-> cmdline = [cmd]
(Pdb) c
  Executing /usr/bin/python /tmp/tmpRcLmBb-venv-tmp/virtualenv.py /tmp/tmpzbH7YN-venv
    /usr/bin/python: can't open file '/tmp/tmpRcLmBb-venv-tmp/virtualenv.py': [Errno 2] No such file or directory
    Error: Failed to execute command "/usr/bin/python"

Having investigated it a little bit, I understood that it attempts to use /tmp/tmpRcLmBb-venv-tmp/virtualenv.py, whereas the path that is actually formed on the system is /tmp/tmpRcLmBb-venv-tmp/virtualenv-12.0.7/virtualenv.py (in other words, there is a virtualenv-12.0.7 subdirectory).

Altering the path manually via a debugger does the trick and Platter moves on. It then fails at another point:

  Executing /tmp/tmp5XYUlZ-venv/bin/pip install wheel
    Collecting wheel
      Downloading wheel-0.24.0-py2.py3-none-any.whl (63kB)
    Installing collected packages: wheel

    Successfully installed wheel-0.24.0
Analyzing package
Invoking dummy setup to trigger requirements.
> /usr/local/lib/python2.7/dist-packages/platter.py(253)execute()
-> cmdline = [cmd]
(Pdb) c
Executing /tmp/tmp5XYUlZ-venv/bin/python setup.py --version
  Error: Failed to execute command "/tmp/tmp5XYUlZ-venv/bin/python"
> /usr/local/lib/python2.7/dist-packages/platter.py(269)execute()
-> raise click.Abort()
(Pdb) l
264                     self.log.process_stream_output(cl)
265  
266                 if cl.wait() != 0:
267                     self.log.error('Failed to execute command "%s"' % cmd)
268                     pdb.set_trace()
269  ->                 raise click.Abort()
270                 return rv
271  
272         def cleanup(self):
273             while self.scratchpads:
274                 sp = self.scratchpads.pop()
(Pdb) pp cmd
'/tmp/tmp5XYUlZ-venv/bin/python'
(Pdb) pp args
['setup.py', '--version']
(Pdb) pp os.getcwd()
'/home/pi'
(Pdb) pp cmd
'/tmp/tmp5XYUlZ-venv/bin/python'
(Pdb) pp args
['setup.py', '--version']
(Pdb) 

Remarks:

  • /tmp/tmp5XYUlZ-venv/bin/python does exist
  • there is no setup.py in the current directory, which is /home/pi

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions