Discussion:
tmux on Cygwin
Mark Volkmann
2013-09-03 15:48:08 UTC
Permalink
Has there been any more progress on the process for installing this? I know
some people have it working, but I wasn't able to get it to work.

I suspect many more people would use tmux if it could be used on Windows
machines. I use it all the time on my Mac and would love to be able to use
it at client sites where I have to use Windows.
--
R. Mark Volkmann
Object Computing, Inc.
Thomas Adam
2013-09-03 15:53:09 UTC
Permalink
Hi,
Post by Mark Volkmann
Has there been any more progress on the process for installing this? I know
some people have it working, but I wasn't able to get it to work.
Well, there's preliminary support for this in Git, but I've not heard
of any problems for a while.

Note that even when I release 1.9, which will contain support on
Cygwin, I won't be providing Windows binaries of tmux. That's
somebody else's problem.

-- Thomas Adam
J Raynor
2013-09-04 04:43:08 UTC
Permalink
Post by Thomas Adam
Note that even when I release 1.9, which will contain support on
Cygwin, I won't be providing Windows binaries of tmux. That's
somebody else's problem.
Are you interested in having a cygwin package for tmux if someone else
either builds the package, or supplies a small script which would take
the sources and build the package?
Saad Malik
2013-09-04 05:45:32 UTC
Permalink
Mark,
Here are the instructions for compiling tmux in cygwin:

*libevent*
$ cd libevent-2.0.21-stable
$ make clean
$ ./configure --prefix=/usr
$ make && make install

*tmux*

$ cd tmux-tmux-code
$ make clean
$ CFLAGS="-I/usr/include/ncurses" ./configure --prefix=/usr
$ make && make install


Let me know how this goes. On that note, why do we have to include
/usr/include/ncurses as a seperate CFLAGS? Why can't tmux config include
that automatically?
Post by J Raynor
Post by Thomas Adam
Note that even when I release 1.9, which will contain support on
Cygwin, I won't be providing Windows binaries of tmux. That's
somebody else's problem.
Are you interested in having a cygwin package for tmux if someone else
either builds the package, or supplies a small script which would take
the sources and build the package?
------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
_______________________________________________
tmux-users mailing list
https://lists.sourceforge.net/lists/listinfo/tmux-users
Mark Volkmann
2013-09-04 16:24:23 UTC
Permalink
Post by Saad Malik
Mark,
*libevent*
$ cd libevent-2.0.21-stable
$ make clean
$ ./configure --prefix=/usr
$ make && make install
*tmux*
$ cd tmux-tmux-code
$ make clean
$ CFLAGS="-I/usr/include/ncurses" ./configure --prefix=/usr
I am stuck on this step. Before running this, I installed ncurses 5.9. Here
is part of the config.log file that is generated by the configure command:

gcc version 4.7.3 (GCC)
configure:3197: $? = 0
configure:3186: gcc -V >&5
gcc: error: unrecognized command line option '-V'
gcc: fatal error: no input files
compilation terminated.
configure:3197: $? = 1
configure:3186: gcc -qversion >&5
gcc: error: unrecognized command line option '-qversion'
gcc: fatal error: no input files
compilation terminated.
configure:3197: $? = 1
configure:3217: checking whether the C compiler works
configure:3239: gcc -l/usr/include/ncurses conftest.c >&5
/usr/lib/gcc/i686-pc-cygwin/4.7.3/../../../../i686-pc-cygwin/bin/ld: cannot
find
-l/usr/include/ncurses
collect2: error: ld returned 1 exit status

I have that ncurses directory. I can do the following:

$ ls /usr/include/ncurses
curses.h cursesp.h etip.h ncurses.h term_entry.h
cursesapp.h cursesw.h form.h ncurses_dll.h termcap.h
cursesf.h cursslk.h menu.h panel.h tic.h
cursesm.h eti.h nc_tparm.h term.h unctrl.h

Any idea what I could be doing wrong?
Post by Saad Malik
$ make && make install
--
R. Mark Volkmann
Object Computing, Inc.
Mark Volkmann
2013-09-04 17:26:08 UTC
Permalink
Post by Mark Volkmann
Post by Saad Malik
Mark,
*libevent*
$ cd libevent-2.0.21-stable
$ make clean
$ ./configure --prefix=/usr
$ make && make install
*tmux*
$ cd tmux-tmux-code
$ make clean
$ CFLAGS="-I/usr/include/ncurses" ./configure --prefix=/usr
I am stuck on this step.
Saad correctly pointed out that I have a lowercase L for the flag above
instead of an uppercase I. That fixed that problem.

I am building tmux-1.8. When I run make I get this:

tty.c: In function `tty_init_termios':
tty.c:197:6: error: `ECHOPRT' undeclared (first use in this function)
tty.c:197:6: note: each undeclared identifier is reported only once for
each function it appears in
Makefile:745: recipe for target `tty.o' failed
--
R. Mark Volkmann
Object Computing, Inc.
Saad Malik
2013-09-04 17:46:12 UTC
Permalink
Mark,
Try building from the latest trunk:

*tmux*

$ git clone git://git.code.sf.net/p/tmux/tmux-code tmux-tmux-code
$ cd tmux-tmux-code
$ ./autogen.sh
$ CFLAGS="-I/usr/include/ncurses" ./configure --prefix=/usr
$ make && make install

However, before trying to build/install the latest tmux I would recommend
that you verify that your cygwin is the latest. Download and run the latest
setup file: http://cygwin.com/setup-x86.exe. Just click next through all
the options, if there are any upgrades it should automatically install
them. By the way, the autogen.sh step above needs the Cygwin dependencies
autoconf/automake, so make sure they're installed via the cygwin setup.exe.

I just built the latest tmux from trunk so it's still compiling/working for
Cygwin.

-Saad
Post by Mark Volkmann
Post by Mark Volkmann
Post by Saad Malik
Mark,
*libevent*
$ cd libevent-2.0.21-stable
$ make clean
$ ./configure --prefix=/usr
$ make && make install
*tmux*
$ cd tmux-tmux-code
$ make clean
$ CFLAGS="-I/usr/include/ncurses" ./configure --prefix=/usr
I am stuck on this step.
Saad correctly pointed out that I have a lowercase L for the flag above
instead of an uppercase I. That fixed that problem.
tty.c:197:6: error: `ECHOPRT' undeclared (first use in this function)
tty.c:197:6: note: each undeclared identifier is reported only once for
each function it appears in
Makefile:745: recipe for target `tty.o' failed
--
R. Mark Volkmann
Object Computing, Inc.
Mark Volkmann
2013-09-04 20:17:21 UTC
Permalink
I get errors from ./autogen.sh. Here is the output:

$ ./autogen.sh
configure.ac:17: installing 'etc/compile'
configure.ac:9: installing 'etc/config.guess'
configure.ac:9: installing 'etc/config.sub'
configure.ac:7: installing 'etc/install-sh'
configure.ac:7: installing 'etc/missing'
Makefile.am:194: warning: source file 'compat/forkpty-@***@.c' is in a
subd
irectory,
Makefile.am:194: but option 'subdir-objects' is disabled
automake-1.14: warning: possible forward-incompatibility.
automake-1.14: At least a source file is in a subdirectory, but the
'subdir-obje
cts'
automake-1.14: automake option hasn't been enabled. For now, the
corresponding
output
automake-1.14: object file(s) will be placed in the top-level directory.
Howeve
r,
automake-1.14: this behaviour will change in future Automake versions: they
will

automake-1.14: unconditionally cause object files to be placed in the same
subdi
rectory
automake-1.14: of the corresponding sources.
automake-1.14: You are advised to start using 'subdir-objects' option
throughout
your
automake-1.14: project, to avoid future incompatibilities.
Makefile.am:197: warning: source file 'compat/imsg.c' is in a subdirectory,
Makefile.am:197: but option 'subdir-objects' is disabled
Makefile.am:197: warning: source file 'compat/imsg-buffer.c' is in a
subdirector
y,
Makefile.am:197: but option 'subdir-objects' is disabled
Makefile.am:200: warning: source file 'compat/closefrom.c' is in a
subdirectory,

Makefile.am:200: but option 'subdir-objects' is disabled
Makefile.am:203: warning: source file 'compat/daemon.c' is in a
subdirectory,
Makefile.am:203: but option 'subdir-objects' is disabled
Makefile.am:206: warning: source file 'compat/setenv.c' is in a
subdirectory,
Makefile.am:206: but option 'subdir-objects' is disabled
Makefile.am:209: warning: source file 'compat/strlcat.c' is in a
subdirectory,
Makefile.am:209: but option 'subdir-objects' is disabled
Makefile.am:212: warning: source file 'compat/strlcpy.c' is in a
subdirectory,
Makefile.am:212: but option 'subdir-objects' is disabled
Makefile.am:215: warning: source file 'compat/asprintf.c' is in a
subdirectory,
Makefile.am:215: but option 'subdir-objects' is disabled
Makefile.am:218: warning: source file 'compat/fgetln.c' is in a
subdirectory,
Makefile.am:218: but option 'subdir-objects' is disabled
Makefile.am:221: warning: source file 'compat/getopt.c' is in a
subdirectory,
Makefile.am:221: but option 'subdir-objects' is disabled
Makefile.am:224: warning: source file 'compat/strcasestr.c' is in a
subdirectory
,
Makefile.am:224: but option 'subdir-objects' is disabled
Makefile.am:227: warning: source file 'compat/strsep.c' is in a
subdirectory,
Makefile.am:227: but option 'subdir-objects' is disabled
Makefile.am:230: warning: source file 'compat/vis.c' is in a subdirectory,
Makefile.am:230: but option 'subdir-objects' is disabled
Makefile.am:230: warning: source file 'compat/unvis.c' is in a subdirectory,
Makefile.am:230: but option 'subdir-objects' is disabled
Makefile.am:233: warning: source file 'compat/strtonum.c' is in a
subdirectory,
Makefile.am:233: but option 'subdir-objects' is disabled
Makefile.am:236: warning: source file 'compat/b64_ntop.c' is in a
subdirectory,
Makefile.am:236: but option 'subdir-objects' is disabled
Makefile.am:239: warning: source file 'compat/cfmakeraw.c' is in a
subdirectory,

Makefile.am:239: but option 'subdir-objects' is disabled
Makefile.am: installing 'etc/depcomp'
configure.ac:111: error: possibly undefined macro: AC_SEARCH_LIBS
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
autoreconf-2.69: /usr/bin/autoconf-2.69 failed with exit status: 1
autoreconf failed
Post by Saad Malik
Mark,
*tmux*
$ git clone git://git.code.sf.net/p/tmux/tmux-code tmux-tmux-code
$ cd tmux-tmux-code
$ ./autogen.sh
$ CFLAGS="-I/usr/include/ncurses" ./configure --prefix=/usr
$ make && make install
However, before trying to build/install the latest tmux I would recommend
that you verify that your cygwin is the latest. Download and run the latest
setup file: http://cygwin.com/setup-x86.exe. Just click next through all
the options, if there are any upgrades it should automatically install
them. By the way, the autogen.sh step above needs the Cygwin dependencies
autoconf/automake, so make sure they're installed via the cygwin setup.exe.
I just built the latest tmux from trunk so it's still compiling/working
for Cygwin.
-Saad
Post by Mark Volkmann
Post by Mark Volkmann
Post by Saad Malik
Mark,
*libevent*
$ cd libevent-2.0.21-stable
$ make clean
$ ./configure --prefix=/usr
$ make && make install
*tmux*
$ cd tmux-tmux-code
$ make clean
$ CFLAGS="-I/usr/include/ncurses" ./configure --prefix=/usr
I am stuck on this step.
Saad correctly pointed out that I have a lowercase L for the flag above
instead of an uppercase I. That fixed that problem.
tty.c:197:6: error: `ECHOPRT' undeclared (first use in this function)
tty.c:197:6: note: each undeclared identifier is reported only once for
each function it appears in
Makefile:745: recipe for target `tty.o' failed
--
R. Mark Volkmann
Object Computing, Inc.
--
R. Mark Volkmann
Object Computing, Inc.
J Raynor
2013-09-04 22:54:45 UTC
Permalink
Post by Mark Volkmann
configure.ac:111: error: possibly undefined macro: AC_SEARCH_LIBS
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
I believe you need to have pkg-config installed. You can install this
via cygwin's setup.exe utility.
Mark Volkmann
2013-09-05 15:11:09 UTC
Permalink
Post by Mark Volkmann
Post by Mark Volkmann
configure.ac:111: error: possibly undefined macro: AC_SEARCH_LIBS
If this token and others are legitimate, please use
m4_pattern_allow.
Post by Mark Volkmann
See the Autoconf documentation.
I believe you need to have pkg-config installed. You can install this
via cygwin's setup.exe utility.
After installing pkg-config in Cygwin I was able to complete the install.
When I run "tmux < /dev/null" I get "open terminal failed: not a terminal".
--
R. Mark Volkmann
Object Computing, Inc.
--
R. Mark Volkmann
Object Computing, Inc.
J Raynor
2013-09-05 17:23:28 UTC
Permalink
If you run it normally, does it work now?
J Raynor
2013-09-07 03:13:53 UTC
Permalink
Mark was starting cygwin using the cygwin.bat script. This results in
a terminal with /dev/cons0 (or cons1, cons2, etc) instead of /dev/ptyX
as the tty.

Patrick Shanahan
2013-09-03 15:57:53 UTC
Permalink
Post by Mark Volkmann
Has there been any more progress on the process for installing this? I know
some people have it working, but I wasn't able to get it to work.
I suspect many more people would use tmux if it could be used on Windows
machines. I use it all the time on my Mac and would love to be able to use
it at client sites where I have to use Windows.
I maintain a tmux session on my server and carry a stick w/cygwin so I can
remotely access the tmux session on a windoz box.
--
(paka)Patrick Shanahan Plainfield, Indiana, USA @ptilopteri
http://en.opensuse.org openSUSE Community Member facebook/ptilopteri
http://wahoo.no-ip.org Photo Album: http://wahoo.no-ip.org/gallery2
Registered Linux User #207535 @ http://linuxcounter.net
L. V. Lammert
2013-09-03 16:10:00 UTC
Permalink
Post by Patrick Shanahan
I maintain a tmux session on my server and carry a stick w/cygwin so I can
remotely access the tmux session on a windoz box.
We use Cygwin all the time, .. however IMHO it really isn't 'complete'
enough for a full-blown shell dev session; use PuTTY and shell into a
decent machine, maintain a Tmux session there.

Lee
Saad Malik
2013-09-03 22:34:04 UTC
Permalink
Hi Mark,
I'm sorry we couldn't get Tmux running on your Cygwin environment. I hope
you get it sorted out soon!

I've been running two long-running tmux sessions on my windows desktop for
over a month without ANY crashes or problems.
Post by L. V. Lammert
Post by Patrick Shanahan
I maintain a tmux session on my server and carry a stick w/cygwin so I
can
Post by Patrick Shanahan
remotely access the tmux session on a windoz box.
We use Cygwin all the time, .. however IMHO it really isn't 'complete'
enough for a full-blown shell dev session; use PuTTY and shell into a
decent machine, maintain a Tmux session there.
Lee
------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
_______________________________________________
tmux-users mailing list
https://lists.sourceforge.net/lists/listinfo/tmux-users
J Raynor
2013-09-04 04:38:22 UTC
Permalink
Could you try pulling the latest from git and compiling it? Once
compiled, if it still doesn't work, what happens if you do:

tmux < /dev/null
Nicholas Marriott
2013-09-04 06:10:43 UTC
Permalink
You are probably either missing /usr/include/ncurses.h or /usr/include is not part of the gcc system include path.

-------- Original message --------
From: Saad Malik <***@gmail.com>
Date: 04/09/2013 06:45 (GMT+00:00)
To: J Raynor <***@gmail.com>
Cc: tmux-***@lists.sourceforge.net,Thomas Adam <***@xteddy.org>
Subject: Re: tmux on Cygwin

Mark,
Here are the instructions for compiling tmux in cygwin:

libevent
$ cd libevent-2.0.21-stable
$ make clean
$ ./configure --prefix=/usr
$ make && make install

tmux

$ cd tmux-tmux-code
$ make clean
$ CFLAGS="-I/usr/include/ncurses" ./configure --prefix=/usr
$ make && make install



Let me know how this goes. On that note, why do we have to include /usr/include/ncurses as a seperate CFLAGS? Why can't tmux config include that automatically?
Post by Thomas Adam
Note that even when I release 1.9, which will contain support on
Cygwin, I won't be providing Windows binaries of tmux.  That's
somebody else's problem.
Are you interested in having a cygwin package for tmux if someone else
either builds the package, or supplies a small script which would take
the sources and build the package?
Loading...