Skip to content
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

Better documentation #4

Open
steelcowboy opened this issue Feb 8, 2017 · 4 comments
Open

Better documentation #4

steelcowboy opened this issue Feb 8, 2017 · 4 comments

Comments

@steelcowboy
Copy link

steelcowboy commented Feb 8, 2017

Could you provide some documentation on how to build this? I think it would be nice to have better support for python-gobject on Windows and I think development would flow more smoothly if you had more people helping you ;)

And by that, of course, I imply that I would love to help out myself!

@tumagonx
Copy link
Owner

Admittedly I not sure where to start, the buildscript is gnomebuild.sh I think people familiar with mingw/msys will get a hang of it. But yes it's horrible mess (compared to msys2 build system).
The gcc compiler need to be customized, the one I prepared was https://sourceforge.net/projects/pygobjectwin32/files/gcc485_sjlj32_seh64_boost155_static.7z/download

Therefor where to start?
nb: I'm not good at documenting or english overall

@steelcowboy
Copy link
Author

No problem, I completely understand. Here are a few questions I have that it would nice to have in your README:

  1. What do I need to run the gnomebuild.sh? Do I need mingw? Can I use msys2?
  2. Will I need to download that gcc to my build environment, and how can I customize it myself?
  3. Where are all of the patches coming from?

Some of these may be answerable by reading gnomebuild.sh, but in order to get started you want your devs to just be able to jump in, make a build, and then look at the source later for hacking.

If you want to email me at james.r.heald@gmail.com and correspond with me I can help write up some of that documentation if you'd like :)

@tumagonx
Copy link
Owner

  1. I think msys2 should do, I don't personally use it though (still stuck with msys1)
  2. it's a matter precautions but how this matter at runtime in real world I am not sure:
    • to not linking multiple version msvcrt in a binary (passing -lmsvcrXX isn't enough)
    • care of XP (at least until now I keep it XP compatible), vanilla gcc/mingw64 is targeted with Vista msvcrt.dll in mind.
      The mingw-w64 headers need to be patched, that's why you'll see strange gcc options in buildscript like -vcrXX (just cosmetics rather than override gcc specfile), gcc internal order of libs also need altered (gcc\config\i386\mingw-w64.h and/or mingw32.h). I will prepare patch if you interested
  3. Some patches are from me (mostly cosmetics) some came from fedore/opensuse cross-compile project (I merge all into one file)

Oh and currently I'm stuck https://sourceforge.net/p/pygobjectwin32/tickets/50/ (don't have time to debug it as well) I have no idea how to use msvcrt 2015 with gcc nor will it feasible to use vs2015 compiler to build all of these stuff.

@tumagonx
Copy link
Owner

in fact lately I started to think if I still need to maintain pygobjectwin32 considering msys2 support it as well and more developer friendly (I think mine is more user friendly, the installer that is).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants