-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Building 21.1.0 fails with unsupported function return type #43
Comments
Same here (on Cygwin, python 3.8). V 0.75.0 compiles. |
I think the culprit is
introduced in 5cc4e52. I tried something along the lines of
which passes through sip, but gives me an compilation error later on. |
Probably a definition needs to be added to |
libfprint 1.90.7 live-media 2021.01.14 python3-timezonefinder 5.1.0 xapian-core 1.4.18 python3-poppler-qt 21.1.0, fails to build, known upstream frescobaldi/python-poppler-qt5#43
Same identical problem here using Arch Linux. Any possibility of a fix? Totally unable to build and use Frescobaldi. |
I made a fix in #45 |
Applied, new error... |
What is your build call and SIP version? Don't use the deprecated https://www.riverbankcomputing.com/static/Docs/sip/introduction.html#overview |
I had patched in sip5 specifically; when I took that out, it was fine. Sorry for the noise. :) |
Several options:
You still have to build it, of course. |
Pardon my base ignorance.
I did this:
Get the archive from my branch: https://github.com/bnavigator/python-poppler-qt5/archive/map-qvector-qpair.zip
Here is the result:
python setup.py build_ext
--pyqt-sip-dir=/usr/lib/python3.9/site-packages/PyQt5/bindings running
build_ext building 'popplerqt5' extension /usr/bin/sip -I
/usr/share/sip -t POPPLER_V21_01_0 -c build/temp.linux-x86_64-3.9 -b
build/temp.linux-x86_64-3.9/poppler-qt5.sbf -I
/usr/lib/python3.9/site-packages/PyQt5/bindings -n PyQt5.sip -t
Qt_5_15_0 -t WS_X11 poppler-qt5.sip sip: poppler-form.sip:152:
::Poppler::FormFieldChoice::choicesWithExportValues() unsupported
function return type - provide %MethodCode and a C++ signature error:
command '/usr/bin/sip' failed with exit code 1
For this, I know how to clone a repository, but I don't know how to
find a pull request and apply it. Can you please give more detailed
commands?
Clone the git repository and checkout the PR with the gh cli or using git directly.
Similarly, I don't know how to do this:
Apply https://github.com/frescobaldi/python-poppler-qt5/issues/45.patch to existing sourcecode
I sincerely apologise for asking basic git questions here, but these
less common usages always seem to be beyond my limited grasp of git.
Andrew
…On Wed, 24 Feb 2021 at 09:50, Ben Greiner ***@***.***> wrote:
Several options:
Get the archive from my branch: https://github.com/bnavigator/python-poppler-qt5/archive/map-qvector-qpair.zip
Clone the git repository and checkout the PR with the gh cli or using git directly.
Apply https://github.com/frescobaldi/python-poppler-qt5/issues/45.patch to existing sourcecode
...
|
Stupidly having neglected to check out the branch map-qvector-qpair, having
done so I get a long cascade of errors about SIP_NULLPRT not declared, and
gcc fails.
build/temp.linux-x86_64-3.9/sippopplerqt5cmodule.cpp:1782:5: error:
‘SIP_NULLPTR’ was not declared in this scope; did you mean ‘Q_NULLPTR’?
|
Just to confirm, the patch from #45 makes it build fine again for me. |
Mind you again. This is all for building python-poppler-qt5 from source. There are no pre-built wheels for you yet.
The
Just follow the links. Visit the Github page instead of reading this thread in the mail reader.
This completely independent of git. Also note that the link was wrong initially. I edited the post. Another reason to read the thread on the website. To build, you need to have all build dependencies, including qmake and the poppler-qt5 headers. (search for wget https://files.pythonhosted.org/packages/70/13/264e20336f7951044a8dd49cb1460bd318e2ebacff1753f908e6544ec933/python-poppler-qt5-21.1.0.tar.gz
wget https://github.com/frescobaldi/python-poppler-qt5/pull/45.patch
python3 -m venv popplerbuild
source popplerbuild/bin/activate
tar xf python-poppler-qt5-21.1.0.tar.gz
cd python-poppler-qt5-21.1.0
patch -p1 < ../45.patch
pip install --upgrade pip
# you need qmake in PATH
export PATH=$PATH:/usr/lib64/qt5/bin/
# This builds the wheel, which you can install into any venv or user-site
pip wheel -v . |
Thanks for the help! I may need some help with improving the build process and install instructions. Currently I maintain version etc in both setup.py and pyproject.toml, which is a bit cumbersome... |
When I try building python-poppler-qt5-21.1.0 with the following
python3.9 /usr/x86_64-pc-linux-gnu/bin/sip-build --build-dir /var/tmp/paludis/build/dev-python-python-poppler-qt5-21.1.0/work/PYTHON_ABIS/3.9 --no-make --qmake /usr/x86_64-pc-linux-gnu/lib/qt5/bin/qmake --target-dir /usr/x86_64-pc-linux-gnu/lib/python3.9/site-packages --verbose
it fails with
This is with sip-5.5.0, PyQt5-5.15.2 and poppler-21.01.0.
The text was updated successfully, but these errors were encountered: