gap-packages / JupyterKernel

Native Jupyter kernel for GAP
https://gap-packages.github.io/JupyterKernel/
BSD 3-Clause "New" or "Revised" License
19 stars 12 forks source link

Getting it to work on Windows #45

Open olexandr-konovalov opened 6 years ago

olexandr-konovalov commented 6 years ago

In the past, I was able to use Docker on Windows to connect to GAP running in the container from the browser running under Windows. I hope that by building needed packages and including further DLLs in the Windows GAP distribution we may get a working version under Windows that does not require Docker.

markuspf commented 6 years ago

I am not sure what the JupyterKernel issue is that we want to address?

olexandr-konovalov commented 6 years ago

TODO: test its usability under Windows.

olexandr-konovalov commented 6 years ago

The current state of this is to get ZeroMQInterface package built under Cygwin: see https://github.com/gap-packages/ZeroMQInterface/issues/23

olexandr-konovalov commented 5 years ago

As reported in #76, one can successfully use JupyterKernel on Windows 10 after installing GAP in the Linux subsystem.

olexandr-konovalov commented 5 years ago

I have now a new Windows 10 VM with an up to date Cygwin installation. It compiles all JupyterKernel dependencies. I have also installed Python using Anaconda, and run python setup.py install so it now offers the GAP kernel. The latter does not start however. Of course, one can't run jupyter-kernel-gap in the Windows shell, but it seems that the major obstacle is not there, but in using IO_fork:

gap> JUPYTER_KernelStart_GAP("C:/Users/alexk/AppData/Roaming/jupyter/runtime/kernel-37253dce-ab6f-49b9-8a88-7f2d4c63d19a.json");
      1 [main] gap 3254 child_info_fork::abort: address space needed by 'zeromqinterface.so' (0x1470000) is already occupied
Error, no method found! For debugging hints type ?Recovery from NoMethodFound
Error, no 1st choice method found for `Run' on 1 arguments
The 1st argument is 'fail' which might point to an earlier problem
markuspf commented 5 years ago

With the now evolving py-gap package, it will be much easier to handle the Jupyter protocol from python and dump GAP implemementation of it. That gets rid of IO_fork and other crud.

olexandr-konovalov commented 3 years ago

@ZachNewbery reports using it on Windows 10 by installing GAP under WSL. This will be advised in one of the coming documentation updates.