codrsquad / codrsquad/portable-python

Can't add tkinter because of missing libx11-dev package

Open
#19 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Python
Stars
86
Forks
13
PR merge metrics
No merged PRs in 30d

Description

Every time I'm trying to build python with all modules it failing on tkinter.
Main reason is missing libx11-dev package but even if I install libx11-dev package it's still failing because of "1 problematic" issue with tkinter.

INFO Symlink build/cpython-3.9.12/ppp-marker/3.9.12/lib/python3.9/config-3.9-x86_64-linux-gnu/libpython3.9.a <- build/cpython-3.9.12/ppp-marker/3.9.12/lib/libpython3.9.a
        prefix  build/cpython-3.9.12/ppp-marker/3.9.12
          _bz2  _bz2*.so
       _ctypes  1.1.0 _ctypes*.so
       _curses  2.2 _curses*.so
          _dbm  _dbm*.so
      _decimal  1.70 _decimal*.so
         _gdbm  1.23.0 _gdbm*.so
         _lzma  _lzma*.so
      _sqlite3  3.42.0 _sqlite3*.so
          _ssl  OpenSSL 1.1.1u  30 May 2023 _ssl*.so
      _tkinter  *absent* None
         _uuid  _uuid*.so
           pip  23.1.2 lib/python3.9/site-packages/pip
       pyexpat  2.4.7 pyexpat*.so
      readline  8.2 readline*.so
    setuptools  *absent* build/cpython-3.9.12/ppp-marker/3.9.12/lib/python3.9/distutils/core.py
          zlib  1.2.13 zlib*.so
  libpython*.a  54 MB lib/libpython3.9.a lib/python3.9/config-3.9-x86_64-linux-gnu/libpython3.9.a
 libpython*.so  -not used-
  install size  123 MB
ERROR Build failed: 
-- 1 problematic
_tkinter*_failed.so
INFO Compiling cpython took 3 minutes 32 seconds
INFO Overall compilation took 5 minutes 5 seconds

Used command:
portable-python -c portable-python.yml build 3.9.12 -m libffi,zlib,xz,bzip2,readline,openssl,sqlite,bdb,gdbm,uuid,tkinter

Tested in docker with and without installed libx11-dev packages.

Build without libx11-dev:
13-tk.log

Build with installed libx11-dev:
13-tk.log

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the two attached 13-tk.log builds, then reproduce the portable-python command shown for Python 3.9.12 with and without libx11-dev. Trace why _tkinter is reported as absent or failed; done means the tkinter module builds successfully in the demonstrated configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.