-
-
Notifications
You must be signed in to change notification settings - Fork 216
Update Windows development instructions #3770
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
Conversation
1ae4877
to
18945ed
Compare
Hi @amolenaar, I think you are right, we probably don't need to use the Gvsbuild generated wheels at all, because Gaphor has this shim in place: I would like to get rid of this shim by building Windows Wheels since asking every user of PyGObject to create a load DLL shim isn't a great experience, but that shouldn't prevent us from simplifying the dev environment instructions. We'll probably need to test what the minimum things needed to pip install the sdist for PyGObject and pycairo. The no-binary is needed for pycairo because they are publishing statically linked wheels of pycairo with cairo only and no GTK. |
Not only that. It'll require every user of PyGObject to have a C compiler installed as well. Creating a wheel is also tricky business, since we need GLib and GIRepository fot PyGObject to work. Also, we need them as DLL's. So, having pycairo built from source can indeed simplify the Windows development experience. Shall I change the docs accordingly? Do we need the instructions for MSVC back in place? |
Hi @amolenaar, I wonder if there is a hybrid approach which may be what you are suggesting:
|
That should work, I suppose. That's simpler than having to install 2 local wheels every time you did a We used to have instructions for setting up MSVC in our docs. Should we put it back? |
@amolenaar, yes, I think so. Then I'm going to make it my mission to finish this build wheels for PyGObject project :) |
It won't be easy, due to the dependency on GLib, GObject and GIRepository. But there must be a way. But then, having a statically linked pycairo doesn't help either. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @amolenaar!
PR Type
What kind of change does this PR introduce?
What is the new behavior?
I checked the windows instructions. Made a few minor changes (e.g. python versions).
One thing I noticed is that I only need to install pycairo from gvsbuild. PyGObject works fine, at least on my setup.
It also works if I disallow installing the precompiled binaries for pycairo:
Maybe those are alternatives to force-installing the builds made with GVSBuild. We can also add this bit of configuration in a
poetry.toml
file. Is that file supposed to be checked in?BTW. I do not see any instructions on installing compilers. Is that done automatically nowadays?