Bug 653058 - python3 doesn't start without python3-devel installed
Summary: python3 doesn't start without python3-devel installed
Alias: None
Product: Fedora
Classification: Fedora
Component: python3
Version: rawhide
Hardware: x86_64
OS: Linux
Target Milestone: ---
Assignee: Dave Malcolm
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2010-11-14 10:09 UTC by sangu
Modified: 2010-11-17 20:40 UTC (History)
4 users (show)

Fixed In Version: python3-3.2-0.5.a1.fc15
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2010-11-17 20:40:11 UTC
Type: ---

Attachments (Terms of Use)

Description sangu 2010-11-14 10:09:35 UTC
Description of problem:
$ python3
Traceback (most recent call last):
  File "/usr/lib64/python3.2/sysconfig.py", line 314, in _init_posix
    parse_config_h(open(config_h), vars)
IOError: [Errno 2] No such file or directory: '/usr/include/python3.2/pyconfig.h'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/python3.2/site.py", line 559, in <module>
  File "/usr/lib64/python3.2/site.py", line 541, in main
    known_paths = addusersitepackages(known_paths)
  File "/usr/lib64/python3.2/site.py", line 261, in addusersitepackages
    user_site = getusersitepackages()
  File "/usr/lib64/python3.2/site.py", line 236, in getusersitepackages
    user_base = getuserbase() # this will also set USER_BASE
  File "/usr/lib64/python3.2/site.py", line 226, in getuserbase
    USER_BASE = get_config_var('userbase')
  File "/usr/lib64/python3.2/sysconfig.py", line 553, in get_config_var
    return get_config_vars().get(name)
  File "/usr/lib64/python3.2/sysconfig.py", line 454, in get_config_vars
  File "/usr/lib64/python3.2/sysconfig.py", line 319, in _init_posix
    raise IOError(msg)
IOError: invalid Python installation: unable to open /usr/include/python3.2/pyconfig.h (No such file or directory)

After installing python3-devel, this issue was fixed.
then python3 package doesn't require python3-devel package.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
Actual results:

Expected results:

Additional info:

Comment 1 Toshio Ernie Kuratomi 2010-11-14 18:59:39 UTC
The python2 package has this:

# "Makefile" and the config-32/64.h file are needed by
# distutils/sysconfig.py:_init_posix(), so we include them in the libs
# package, along with their parent directories (bug 531901):
%dir %{pylibdir}/config
%dir %{_includedir}/python%{pybasever}

Probably need to apply something similar to the python3 package.

Comment 2 Dave Malcolm 2010-11-17 19:55:45 UTC
(In reply to comment #1)
> Probably need to apply something similar to the python3 package.

The python3.src.rpm does have this already.

What is the output of running the following command:
   rpm -qa "python3*" | sort

Interestingly, the error report refers to "/usr/include/python3.2/pyconfig.h" rather than pyconfig-64.h, so I think we're seeing something akin to this from the python.spec file:
> * Thu Jul 22 2010 David Malcolm <dmalcolm@redhat.com> - 2.7-4
> - fix reference to pyconfig.h in sysconfig that led to failure on startup if
> python-devel was not installed

Comment 3 Dave Malcolm 2010-11-17 20:06:48 UTC
Fix (I hope) committed and pushed to git:

Building python3-3.2-0.5.a1.fc15 for dist-rawhide
Task info: http://koji.fedoraproject.org/koji/taskinfo?taskID=2607156

Comment 4 Dave Malcolm 2010-11-17 20:40:11 UTC
I believe this is now fixed (in python3-3.2-0.5.a1.fc15).

Note You need to log in before you can comment on or make changes to this bug.