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

Building on Windows with Cygwin/CygwinX #20

Open
udo-munk opened this issue Feb 3, 2020 · 6 comments
Open

Building on Windows with Cygwin/CygwinX #20

udo-munk opened this issue Feb 3, 2020 · 6 comments
Labels
enhancement New feature or request

Comments

@udo-munk
Copy link

udo-munk commented Feb 3, 2020

I've build Tek4010 on a Windows 10 system with Cygwin/CygwinX. For compiling a small change in tube.c was necessary, because FIONREAD is defined in another header file than under Linux:

...
...
#include <pwd.h>

#ifdef` CYGWIN
#include <sys/socket.h>
#endif

#include "main.h"
...
...

Here are screenshots from Tek4010 running with my virtual z80pack machines. The option -autoClear is a real nice addon and allows much easier usage of the terminal from a CP/M system.

tek1
tek2

@udo-munk
Copy link
Author

udo-munk commented Feb 3, 2020

The define is <_ _ C Y G W I N _ _>, can't get it formatted properly.

@rricharz
Copy link
Owner

rricharz commented Feb 3, 2020

This sounds very interesting. I know that many users would want to use tek4010 with Windows. If

  1. Performance is good
  2. Installation can be handled by not very experienced users
    then we should provide the details in this repo. This could either be a built version or a description of how to build, install and use it. What are your thoughts?

@udo-munk
Copy link
Author

udo-munk commented Feb 3, 2020

Performance is good, not a issue.

Not very experienced Windows users likeley won't be happy with this, because the whole usage is more like working on a Linux command line terminal. Cygwin just provides a POSIX compatible environment on Windows systems, so that POSIX applications can be build and used.

For building of course I had to install libgtk3-devel, same as on Linux systems. For running the package procps is needed, it provides pgrep/pkill. And dbus is needed too, GTK seems to use the Freedesktop message bus system. I just launched it with dbus-launch, should be added somewhere to the X11 startup scripts probably.

IMHO this is usable for anyone with Linux experience only, who just has a Windows 10 machine handy and uses Cygwin anyway on the machine.

@rricharz rricharz added the enhancement New feature or request label Feb 4, 2020
@BrianInglis
Copy link

Did not notice any dependencies in the notes: where are pgrep/pkill and dbus used?
I do not have a use case but @mintty and @larsbrinkhoff were discussing creating a tek library which could be used to implement Tek emulation in the Cygwin mintty terminal emulator on Windows like xterm: mintty already supports Regis Sixel graphics, Unicode including Emojis, and various formats of graphics backgrounds.
Does not take a lot of effort to patch this project for Cygwin packaging nor would it to add proper Raspbian, Debian, Ubuntu packaging.

@udo-munk
Copy link
Author

In tube.c pkill is executed in system(), which fails if the package is not installed.
I don't know where the GTK stuff launches the dbus daemon, it fails if dbus is not installed.

@BrianInglis
Copy link

@mintty said: "The tube_quit function would not be used in such an integration case anyway, no problem."
I am currently looking at what I need to be able to package this properly for Cygwin ITP, and perhaps also Raspbian/Ubuntu/Debian ITP, as that is where it was built for.

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

No branches or pull requests

3 participants