codrsquad / codrsquad/portable-python

Request: Add a step-by-step guide explaining how to get a portable python build on linux

Aperta
#9 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

documentation good first issue
Lingua principale
Python
Stelle
86
Fork
13
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Hello,

Thank your your work on this tool !

I'm trying to get a portable build of python 3.10 out of portable-python and I'm probably missing something because builds are... not portable :'(

Here is what I have tried to far in docker running ubuntu:18.04

apt update && apt install python3-pip gcc make libffi-dev zlib1g-dev
pip3 install portable-python
portable-python build 3.10.9

The build succeeds but the resulting python build is linked against libffi and libz:

        prefix  /build/ppp-marker/3.9.16
          _bz2  *absent* None
       _ctypes  1.1.0 _ctypes*.so ffi:6
       _curses  *absent* None
          _dbm  *absent* None
      _decimal  1.70 _decimal*.so
         _gdbm  *absent* None
         _lzma  _lzma*.so
      _sqlite3  *absent* None
          _ssl  *absent* None
      _tkinter  *absent* None
         _uuid  *absent* None
           pip  22.0.4 lib/python3.9/site-packages/pip
       pyexpat  2.5.0 pyexpat*.so
      readline  *absent* None
    setuptools  58.1.0 lib/python3.9/site-packages/setuptools
          zlib  1.2.11 zlib*.so z:1
  libpython*.a  67 MB lib/libpython3.9.a lib/python3.9/config-3.9-x86_64-linux-gnu/libpython3.9.a
 libpython*.so  -not used-
  install size  122 MB
ERROR Build failed: Uses system libs: /lib/x86_64-linux-gnu/libz.so.1 /usr/lib/x86_64-linux-gnu/libffi.so.6
INFO Compiling cpython took 6 minutes 46 seconds
INFO Overall compilation took 6 minutes 57 seconds

What should I do to get a fully portable build? And could we document that in a step-by-step how-to guide?

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia dal punto di ingresso portable-python build 3.10.9 e riproduci i comandi mostrati nell’issue all’interno di ubuntu:18.04. Analizza perché la build risultante segnala /lib/x86_64-linux-gnu/libz.so.1 e /usr/lib/x86_64-linux-gnu/libffi.so.6 come librerie di sistema. Il lavoro è completo quando una guida passo passo spiega come produrre una build Python completamente portabile.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
python
Ambito
build-system, documentation
Tipo di issue
Documentazione
Difficoltà
2/5
Tempo stimato
Mezza giornata
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.