[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pykde
Subject:    Re: [PyQt] Incorrect file names in sip-4.19 configure script for Windows
From:       Patrick Stinson <patrickkidd () gmail ! com>
Date:       2020-04-24 16:07:22
Message-ID: B0EA1CE9-523B-497E-B327-1F8DBB14B6A5 () gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Yes. Some of the paths are different because there is no install step that produces a python \
dist for hierarchy - that I know of. Everything occurs in place in the source build dir and in \
different locations. For what it's worth, I just built with PCBuild/build.bat as described \
here: https://cpython-core-tutorial.readthedocs.io/en/latest/build_cpython_windows.html

Though some of these problems also have to do with using a debug build of python.

> On Apr 24, 2020, at 12:16 AM, Phil Thompson <phil@riverbankcomputing.com> wrote:
> 
> On 24/04/2020 06:50, Patrick Stinson wrote:
> > Hello,
> > I ran into a few problems with configuring, building, and installing
> > sip-4.19.19 script on windows using python built from source (with
> > PCBuild\build.bat). Here they are along with my workarounds:
> > SIP
> > - It expects site-packages\PyQt5 to already exist when passing
> > —sip-module=PyQt5.sip. I worked around this by patching configure.py
> > to create the dir if it doesn't exist (see attached diff)
> > - For a python built from source, configure.py expects pythonxx.lib or
> > pythonXX_d.lib to be in PYTHON_ROOT\\libs. I hacked configure.py to
> > use PYTHON_ROOT\\amd64 instead (see attached diff).
> > - As with sip above, I hacked configure.py to include the '_d' debug
> > suffix for each entry in installed.txt so that `nmake install` would
> > pick up the correct file names (see attached diff).
> > PYQT5
> > - The include paths need to include both PYTHON_ROOT\include for
> > Python.h and PYTHON_ROOT\PC for pyconfig.h. I worked around this by
> > manually appending PYTHON_ROOT\PC to include_paths just before the
> > call to generate_module_makefile().
> > - As describe above with sip, for a python built from source,
> > configure.py expects pythonxx.lib or pythonXX_d.lib to be in
> > PYTHON_ROOT\\libs. I hacked configure.py to use PYTHON_ROOT\\amd64
> > instead (see attached diff).
> > - As with sip above, I hacked configure.py to include the '_d' debug
> > suffix for each entry in installed.txt so that `nmake install` would
> > pick up the correct file names  (see attached diff).
> > Am I making any big mistakes here that would make life easier?
> 
> Are you saying that a Python installation built from source behaves differently than one \
> installed from python.org? 
> Phil


[Attachment #5 (text/html)]

<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body \
dir="auto"><div dir="ltr">Yes. Some of the paths are different because there is no install step \
that produces a python dist for hierarchy - that I know of. Everything occurs in place in the \
source build dir and in different locations. For what it's worth, I just built with \
PCBuild/build.bat as described here:&nbsp;<a \
href="https://cpython-core-tutorial.readthedocs.io/en/latest/build_cpython_windows.html">https:/ \
/cpython-core-tutorial.readthedocs.io/en/latest/build_cpython_windows.html</a></div><div \
dir="ltr"><br></div><div dir="ltr">Though some of these problems also have to do with using a \
debug build of python.</div><div dir="ltr"><br><blockquote type="cite">On Apr 24, 2020, at \
12:16 AM, Phil Thompson &lt;phil@riverbankcomputing.com&gt; \
wrote:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr"><span>On 24/04/2020 \
06:50, Patrick Stinson wrote:</span><br><blockquote \
type="cite"><span>Hello,</span><br></blockquote><blockquote type="cite"><span>I ran into a few \
problems with configuring, building, and installing</span><br></blockquote><blockquote \
type="cite"><span>sip-4.19.19 script on windows using python built from source \
(with</span><br></blockquote><blockquote type="cite"><span>PCBuild\build.bat). Here they are \
along with my workarounds:</span><br></blockquote><blockquote \
type="cite"><span>SIP</span><br></blockquote><blockquote type="cite"><span>- It expects \
site-packages\PyQt5 to already exist when passing</span><br></blockquote><blockquote \
type="cite"><span>—sip-module=PyQt5.sip. I worked around this by patching \
configure.py</span><br></blockquote><blockquote type="cite"><span>to create the dir if it \
doesn't exist (see attached diff)</span><br></blockquote><blockquote type="cite"><span>- For a \
python built from source, configure.py expects pythonxx.lib \
or</span><br></blockquote><blockquote type="cite"><span>pythonXX_d.lib to be in \
PYTHON_ROOT\\libs. I hacked configure.py to</span><br></blockquote><blockquote \
type="cite"><span>use PYTHON_ROOT\\amd64 instead (see attached \
diff).</span><br></blockquote><blockquote type="cite"><span>- As with sip above, I hacked \
configure.py to include the '_d' debug</span><br></blockquote><blockquote \
type="cite"><span>suffix for each entry in installed.txt so that `nmake install` \
would</span><br></blockquote><blockquote type="cite"><span>pick up the correct file names (see \
attached diff).</span><br></blockquote><blockquote \
type="cite"><span>PYQT5</span><br></blockquote><blockquote type="cite"><span>- The include \
paths need to include both PYTHON_ROOT\include for</span><br></blockquote><blockquote \
type="cite"><span>Python.h and PYTHON_ROOT\PC for pyconfig.h. I worked around this \
by</span><br></blockquote><blockquote type="cite"><span>manually appending PYTHON_ROOT\PC to \
include_paths just before the</span><br></blockquote><blockquote type="cite"><span>call to \
generate_module_makefile().</span><br></blockquote><blockquote type="cite"><span>- As describe \
above with sip, for a python built from source,</span><br></blockquote><blockquote \
type="cite"><span>configure.py expects pythonxx.lib or pythonXX_d.lib to be \
in</span><br></blockquote><blockquote type="cite"><span>PYTHON_ROOT\\libs. I hacked \
configure.py to use PYTHON_ROOT\\amd64</span><br></blockquote><blockquote \
type="cite"><span>instead (see attached diff).</span><br></blockquote><blockquote \
type="cite"><span>- As with sip above, I hacked configure.py to include the '_d' \
debug</span><br></blockquote><blockquote type="cite"><span>suffix for each entry in \
installed.txt so that `nmake install` would</span><br></blockquote><blockquote \
type="cite"><span>pick up the correct file names &nbsp;(see attached \
diff).</span><br></blockquote><blockquote type="cite"><span>Am I making any big mistakes here \
that would make life easier?</span><br></blockquote><span></span><br><span>Are you saying that \
a Python installation built from source behaves differently than one installed from \
python.org?</span><br><span></span><br><span>Phil</span><br></div></blockquote></body></html>


[Attachment #6 (text/plain)]

_______________________________________________
PyQt mailing list    PyQt@riverbankcomputing.com
https://www.riverbankcomputing.com/mailman/listinfo/pyqt


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic