Skip to content

PyPi package doesn't install header files in the header file search path. #24

@jonathanunderwood

Description

@jonathanunderwood

Use case: I maintain a python package which includes an extension module, and which uses the py3c headers, which, up to now, I have bundled with the project. Now that version 1.0 of py3c is available on PyPi, I had hoped that it would be possible to stop bundling the py3c headers and add py3c to the install_requires of my packages setup.py.

Unfortunately, however, pip install py3c puts the headers in a place which is not on the header file search path:

$ ls venv/include/site/python3.6/py3c/
capsulethunk.h  compat.h    py3c.h      tpflags.h
comparison.h    fileshim.h  py3shims.h

That's from doing a pip install py3c with the virtualenv activated. You can see that this directory is not on the standard compiler search path for header files:

gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/python3.6m/py3c -I/home/jgu/Projects/python-lz4/venv/include -I/usr/include/python3.6m -c lz4/_version.c -o build/temp.linux-x86_64-3.6/lz4/_version.o
lz4/_version.c:38:10: fatal error: py3c/py3c.h: No such file or directory
 #include <py3c/py3c.h>

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