xdelta3-python icon indicating copy to clipboard operation
xdelta3-python copied to clipboard

Windows support would be nice

Open i30817 opened this issue 7 years ago • 5 comments

I'm using this on this tool: https://github.com/i30817/zxd3/

And this not being a OS independent package or have a windows version uploaded to pypi prevents me from releasing it on pypi for windows.

Unfortunately i know less than nothing about making native code compilable for windows and how to make pypi make that happen, so this is a issue, not a pull request.

i30817 avatar Jan 22 '18 11:01 i30817

Generating native binaries for windows is far from trivial and since I don't have a windows machine and haven't worked on it for years I wouldn't have a clue.

I couldn't even generate native manylinux binaries for linux since the suggested steps to build them on travis: https://github.com/pypa/manylinux use centos:5.11 which has a very old version of gcc which can't compile xdelta3.

samuelcolvin avatar Jan 22 '18 11:01 samuelcolvin

Seems like the path forward for manylinux is this, from nosing around the issues: https://github.com/pypa/manylinux/issues/118#issuecomment-307228834

i30817 avatar Jan 22 '18 11:01 i30817

makes sense, but that doesn't help for windows.

Since I'm not using this package in production yet and will only be using it on linux servers which can happily compile xdelta3, I'm afraid this can't be a priority for me.

samuelcolvin avatar Jan 22 '18 11:01 samuelcolvin

For windows, if you see mingwpy? I think it's supposed to allow crossbuild.

https://anaconda.org/carlkl/mingwpy http://mingwpy.github.io/index.html

Ofc, i haven't actually tried it, since i'm not a c person, maybe i should

edit: github page says it's abandoned. Annoying

i30817 avatar Jan 22 '18 12:01 i30817

This https://stackoverflow.com/a/24793171/214260 (ie: building it locally and distributing it in the windows wheel like 'data') might work

And using mingw-w64 to crossbuild might work. I actually tried it after installing mingw-w64 with ./configure --build=x86_64-pc-linux-gnu --target=i686-w64-mingw32

and got stopped after errors in make like this 'xdelta3.h:171:72: error: expected declaration specifiers or ‘...’ before string constant'

i30817 avatar Jan 22 '18 12:01 i30817