Depends on [#225]
What and Why
Pick up where [#100] left, and finally get the Windows build in a runnable state (see [WindowsBuild] for what has been done).
This would be a perfect place to ask for external knowledge, either Windows or Python-specific. The final goal is not only to get the Windows compilation up and running, but have a cooking recipe that reasonably ensures that the whole thing can be built easily also for the next release(s).
Current State
- dependencies should be handled with vcpkg, that seems to be the only sane way of doing so on Windows.
- Problem: Does not always work out of the box
- Tensor library has an experimental CMake version, but this is not sufficiently finished
- Lots of loose ends: include directories of dependencies are not found automatically, MSVC does not handle dynamically sized arrays, so you need to patch heavily, ...
- Altogether, using e.g. Vagrant to easily set up a Linux VM seems way simpler than porting the whole thing to Windows => Downgraded priority
Acceptance criteria
- Call for help: Building the Windows version; either asking for Python experts or Windows experts.
- Get the Python module into a state where you can install it on a different computer and Wavepacket works there.
** Suggestion: Build a proper Python wheel with library namespacing and all that.
- Prepare a cooking recipe on the wiki that describes all steps required to build WavePacket for Windows.
- Crop all unneeeded things
- Do all other work required for reproducible building (VM setup? others?)
- Check and update all licenses. In contrast to all other releases, the Windows release would be a binary package with all dependencies, so the licenses should be appropriate.
- Release 0.3 or 0.3.1 as Windows version
- Prepare a proper package (add demos, documentation, Readme for the installation)
- Release the version, announce it
Assembled and tested a Howto for creating a Python module under Windows, https://sourceforge.net/p/wavepacket/cpp/wiki/WindowsBuild/.
The code required very few changes, actually. Most of the work was getting the whole thing to build and run under Windows (I cannot recommend this operating system for hacking).
Diff:
Related
Tickets:
#100Diff:
Related
Tickets:
#100Wiki: WindowsBuild
Diff:
Diff:
postponed; though this would be a cool feature, I would like to try the Python build with CMake first. This might simplify this issue considerably.
Pushed back because the tensor library is just switching to CMake, which would make this issue much simpler.
Diff:
Related
Tickets:
#100Wiki: WindowsBuild
Diff:
Related
Tickets:
#100Tickets:
#225Wiki: WindowsBuild
Diff:
Diff: